aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/ice/src/transport_parameters.vala5
-rw-r--r--xmpp-vala/src/module/xep/0176_jingle_ice_udp/candidate.vala4
2 files changed, 4 insertions, 5 deletions
diff --git a/plugins/ice/src/transport_parameters.vala b/plugins/ice/src/transport_parameters.vala
index acb44852..467b3674 100644
--- a/plugins/ice/src/transport_parameters.vala
+++ b/plugins/ice/src/transport_parameters.vala
@@ -209,8 +209,7 @@ public class Dino.Plugins.Ice.TransportParameters : JingleIceUdp.IceUdpTransport
Nice.Candidate candidate = new Nice.Candidate(type);
candidate.component_id = c.component;
char[] foundation = new char[Nice.CANDIDATE_MAX_FOUNDATION];
- string foundation_str = c.foundation.to_string();
- Memory.copy(foundation, foundation_str.data, foundation_str.length);
+ Memory.copy(foundation, c.foundation.data, size_t.min(c.foundation.length, Nice.CANDIDATE_MAX_FOUNDATION - 1));
candidate.foundation = foundation;
candidate.addr = Nice.Address();
candidate.addr.init();
@@ -237,7 +236,7 @@ public class Dino.Plugins.Ice.TransportParameters : JingleIceUdp.IceUdpTransport
default: assert_not_reached();
}
candidate.component = (uint8) nc.component_id;
- candidate.foundation = (uint8) int.parse((string)nc.foundation);
+ candidate.foundation = ((string)nc.foundation).dup();
candidate.generation = 0;
candidate.id = Random.next_int().to_string("%08x"); // TODO
diff --git a/xmpp-vala/src/module/xep/0176_jingle_ice_udp/candidate.vala b/xmpp-vala/src/module/xep/0176_jingle_ice_udp/candidate.vala
index a2988d90..bcb3aa80 100644
--- a/xmpp-vala/src/module/xep/0176_jingle_ice_udp/candidate.vala
+++ b/xmpp-vala/src/module/xep/0176_jingle_ice_udp/candidate.vala
@@ -4,7 +4,7 @@ using Xmpp;
public class Xmpp.Xep.JingleIceUdp.Candidate {
public uint8 component;
- public uint8 foundation;
+ public string foundation;
public uint8 generation;
public string id;
public string ip;
@@ -19,7 +19,7 @@ public class Xmpp.Xep.JingleIceUdp.Candidate {
public static Candidate parse(StanzaNode node) throws Jingle.IqError {
Candidate candidate = new Candidate();
candidate.component = (uint8) node.get_attribute_uint("component");
- candidate.foundation = (uint8) node.get_attribute_uint("foundation");
+ candidate.foundation = (string) node.get_attribute("foundation");
candidate.generation = (uint8) node.get_attribute_uint("generation");
candidate.id = node.get_attribute("id");
candidate.ip = node.get_attribute("ip");