deadbeef | 1dcb164 | 2017-03-29 21:08:16 -0700 | [diff] [blame] | 1 | /* |
| 2 | * Copyright 2017 The WebRTC project authors. All Rights Reserved. |
| 3 | * |
| 4 | * Use of this source code is governed by a BSD-style license |
| 5 | * that can be found in the LICENSE file in the root of the source |
| 6 | * tree. An additional intellectual property rights grant can be found |
| 7 | * in the file PATENTS. All contributing project authors may |
| 8 | * be found in the AUTHORS file in the root of the source tree. |
| 9 | */ |
| 10 | |
Steve Anton | 10542f2 | 2019-01-11 09:11:00 -0800 | [diff] [blame] | 11 | #ifndef PC_ICE_SERVER_PARSING_H_ |
| 12 | #define PC_ICE_SERVER_PARSING_H_ |
deadbeef | 1dcb164 | 2017-03-29 21:08:16 -0700 | [diff] [blame] | 13 | |
| 14 | #include <vector> |
| 15 | |
Steve Anton | 10542f2 | 2019-01-11 09:11:00 -0800 | [diff] [blame] | 16 | #include "api/peer_connection_interface.h" |
| 17 | #include "api/rtc_error.h" |
Yves Gerey | 3e70781 | 2018-11-28 16:47:49 +0100 | [diff] [blame] | 18 | #include "p2p/base/port.h" |
Steve Anton | 10542f2 | 2019-01-11 09:11:00 -0800 | [diff] [blame] | 19 | #include "p2p/base/port_allocator.h" |
Mirko Bonadei | 66e7679 | 2019-04-02 11:33:59 +0200 | [diff] [blame] | 20 | #include "rtc_base/system/rtc_export.h" |
deadbeef | 1dcb164 | 2017-03-29 21:08:16 -0700 | [diff] [blame] | 21 | |
| 22 | namespace webrtc { |
| 23 | |
| 24 | // Parses the URLs for each server in |servers| to build |stun_servers| and |
| 25 | // |turn_servers|. Can return SYNTAX_ERROR if the URL is malformed, or |
| 26 | // INVALID_PARAMETER if a TURN server is missing |username| or |password|. |
| 27 | // |
| 28 | // Intended to be used to convert/validate the servers passed into a |
| 29 | // PeerConnection through RTCConfiguration. |
Mirko Bonadei | 66e7679 | 2019-04-02 11:33:59 +0200 | [diff] [blame] | 30 | RTC_EXPORT RTCErrorType |
| 31 | ParseIceServers(const PeerConnectionInterface::IceServers& servers, |
| 32 | cricket::ServerAddresses* stun_servers, |
| 33 | std::vector<cricket::RelayServerConfig>* turn_servers); |
deadbeef | 1dcb164 | 2017-03-29 21:08:16 -0700 | [diff] [blame] | 34 | |
| 35 | } // namespace webrtc |
| 36 | |
Steve Anton | 10542f2 | 2019-01-11 09:11:00 -0800 | [diff] [blame] | 37 | #endif // PC_ICE_SERVER_PARSING_H_ |