diff options
author | Marcus Lundblad <malu@pidgin.im> | 2010-02-18 22:42:19 +0000 |
---|---|---|
committer | Marcus Lundblad <malu@pidgin.im> | 2010-02-18 22:42:19 +0000 |
commit | 60465fc97dceb3ddaf337673d5eb121350d95ef0 (patch) | |
tree | cbb5f9b8f08446d44bd54c03d5f34745b77502d0 | |
parent | 3cb409a0ea0a906b254746d01892134948319edc (diff) | |
download | pidgin-60465fc97dceb3ddaf337673d5eb121350d95ef0.tar.gz |
Make the check for PRPL-supplied TURN parameters in the new place
-rw-r--r-- | libpurple/media/backend-fs2.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/libpurple/media/backend-fs2.c b/libpurple/media/backend-fs2.c index 30ada179f2..6a94979f50 100644 --- a/libpurple/media/backend-fs2.c +++ b/libpurple/media/backend-fs2.c @@ -1584,6 +1584,18 @@ create_stream(PurpleMediaBackendFs2 *self, PurpleMediaBackendFs2Session *session; PurpleMediaBackendFs2Stream *stream; FsParticipant *participant; + /* check if the prpl has already specified a relay-info + we need to do this to allow them to override when using non-standard + TURN modes, like Google f.ex. */ + gboolean got_turn_from_prpl = FALSE; + int i; + + for (i = 0 ; i < num_params ; i++) { + if (purple_strequal(params[i].name, "relay-info")) { + got_turn_from_prpl = TRUE; + break; + } + } memcpy(_params, params, sizeof(GParameter) * num_params); @@ -1603,7 +1615,7 @@ create_stream(PurpleMediaBackendFs2 *self, ++_num_params; } - if (turn_ip && !strcmp("nice", transmitter)) { + if (turn_ip && !strcmp("nice", transmitter) && !got_turn_from_prpl) { GValueArray *relay_info = g_value_array_new(0); GValue value; gint turn_port = purple_prefs_get_int( |