diff options
| author | Edwin Mons <edwin.mons@isode.com> | 2018-10-29 16:28:14 (GMT) |
|---|---|---|
| committer | Edwin Mons <edwin.mons@isode.com> | 2018-11-08 11:31:20 (GMT) |
| commit | cf3d517763a3d74a2ec9fd6f7bdee8cbaee3550f (patch) | |
| tree | 69e11e13ff2e5127d2cbfcc164be761cf104a1b2 /Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp | |
| parent | 5ce9e19ef0744f530a797c30a82e9723eb7ea306 (diff) | |
| download | swift-cf3d517763a3d74a2ec9fd6f7bdee8cbaee3550f.zip swift-cf3d517763a3d74a2ec9fd6f7bdee8cbaee3550f.tar.bz2 | |
Consistently use unsigned short for network ports
Network ports are now consistently stored as unsigned shorts, apart from
the options and user interface, where -1 is still used to denote the use
of default ports.
Test-Information:
Unit tests pass on macOS 10.13 and Debian 9
On macOS: tested the UI with various proxy and manual ports, behaviour
as expected.
Change-Id: I7a65f40083022887aa30ed7b21eadc56d0c52be1
Diffstat (limited to 'Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp')
| -rw-r--r-- | Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp b/Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp index e639e20..a405e0e 100644 --- a/Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp +++ b/Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.cpp | |||
| @@ -5,7 +5,7 @@ | |||
| 5 | */ | 5 | */ |
| 6 | 6 | ||
| 7 | /* | 7 | /* |
| 8 | * Copyright (c) 2014-2016 Isode Limited. | 8 | * Copyright (c) 2014-2018 Isode Limited. |
| 9 | * All rights reserved. | 9 | * All rights reserved. |
| 10 | * See the COPYING file for more information. | 10 | * See the COPYING file for more information. |
| 11 | */ | 11 | */ |
| @@ -13,6 +13,7 @@ | |||
| 13 | #include <Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.h> | 13 | #include <Swiften/Parser/PayloadParsers/JingleS5BTransportMethodPayloadParser.h> |
| 14 | 14 | ||
| 15 | #include <boost/lexical_cast.hpp> | 15 | #include <boost/lexical_cast.hpp> |
| 16 | #include <boost/numeric/conversion/cast.hpp> | ||
| 16 | #include <boost/optional.hpp> | 17 | #include <boost/optional.hpp> |
| 17 | 18 | ||
| 18 | #include <Swiften/Base/Log.h> | 19 | #include <Swiften/Base/Log.h> |
| @@ -40,10 +41,10 @@ namespace Swift { | |||
| 40 | JingleS5BTransportPayload::Candidate candidate; | 41 | JingleS5BTransportPayload::Candidate candidate; |
| 41 | candidate.cid = attributes.getAttributeValue("cid").get_value_or(""); | 42 | candidate.cid = attributes.getAttributeValue("cid").get_value_or(""); |
| 42 | 43 | ||
| 43 | int port = -1; | 44 | unsigned short port = 0; |
| 44 | try { | 45 | try { |
| 45 | port = boost::lexical_cast<int>(attributes.getAttributeValue("port").get_value_or("-1")); | 46 | port = boost::numeric_cast<unsigned short>(boost::lexical_cast<int>(attributes.getAttributeValue("port").get_value_or("0"))); |
| 46 | } catch(boost::bad_lexical_cast &) { } | 47 | } catch(...) { } |
| 47 | candidate.hostPort = HostAddressPort(HostAddress::fromString(attributes.getAttributeValue("host").get_value_or("")).get_value_or(HostAddress()), port); | 48 | candidate.hostPort = HostAddressPort(HostAddress::fromString(attributes.getAttributeValue("host").get_value_or("")).get_value_or(HostAddress()), port); |
| 48 | candidate.jid = JID(attributes.getAttributeValue("jid").get_value_or("")); | 49 | candidate.jid = JID(attributes.getAttributeValue("jid").get_value_or("")); |
| 49 | int priority = -1; | 50 | int priority = -1; |
Swift