Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(283)

Unified Diff: webrtc/p2p/base/turnserver.cc

Issue 2757893003: Add MakeUnique from chromium and change StunMessage::AddAttribute to take a unique_ptr. (Closed)
Patch Set: add ptr_util.h to rtc_base_approved build target Created 3 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « webrtc/p2p/base/turnport.cc ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/p2p/base/turnserver.cc
diff --git a/webrtc/p2p/base/turnserver.cc b/webrtc/p2p/base/turnserver.cc
index 26d306d519f052b7901713a018ddf73e13e5380e..368bea19fd97a8bc6eb12b21f22d21977ff602f5 100644
--- a/webrtc/p2p/base/turnserver.cc
+++ b/webrtc/p2p/base/turnserver.cc
@@ -12,19 +12,20 @@
#include <tuple> // for std::tie
-#include "webrtc/p2p/base/asyncstuntcpsocket.h"
-#include "webrtc/p2p/base/common.h"
-#include "webrtc/p2p/base/packetsocketfactory.h"
-#include "webrtc/p2p/base/stun.h"
#include "webrtc/base/bind.h"
#include "webrtc/base/bytebuffer.h"
#include "webrtc/base/checks.h"
#include "webrtc/base/helpers.h"
#include "webrtc/base/logging.h"
#include "webrtc/base/messagedigest.h"
+#include "webrtc/base/ptr_util.h"
#include "webrtc/base/socketadapters.h"
#include "webrtc/base/stringencode.h"
#include "webrtc/base/thread.h"
+#include "webrtc/p2p/base/asyncstuntcpsocket.h"
+#include "webrtc/p2p/base/common.h"
+#include "webrtc/p2p/base/packetsocketfactory.h"
+#include "webrtc/p2p/base/stun.h"
namespace cricket {
@@ -113,7 +114,7 @@ static bool InitErrorResponse(const StunMessage* req, int code,
return false;
resp->SetType(resp_type);
resp->SetTransactionID(req->transaction_id());
- resp->AddAttribute(new cricket::StunErrorCodeAttribute(
+ resp->AddAttribute(rtc::MakeUnique<cricket::StunErrorCodeAttribute>(
STUN_ATTR_ERROR_CODE, code, reason));
return true;
}
@@ -353,10 +354,9 @@ void TurnServer::HandleBindingRequest(TurnServerConnection* conn,
InitResponse(req, &response);
// Tell the user the address that we received their request from.
- StunAddressAttribute* mapped_addr_attr;
- mapped_addr_attr = new StunXorAddressAttribute(
+ auto mapped_addr_attr = rtc::MakeUnique<StunXorAddressAttribute>(
STUN_ATTR_XOR_MAPPED_ADDRESS, conn->src());
- response.AddAttribute(mapped_addr_attr);
+ response.AddAttribute(std::move(mapped_addr_attr));
SendStun(conn, &response);
}
@@ -470,10 +470,10 @@ void TurnServer::SendErrorResponseWithRealmAndNonce(
timestamp = ts_for_next_nonce_;
ts_for_next_nonce_ = 0;
}
+ resp.AddAttribute(rtc::MakeUnique<StunByteStringAttribute>(
+ STUN_ATTR_NONCE, GenerateNonce(timestamp)));
resp.AddAttribute(
- new StunByteStringAttribute(STUN_ATTR_NONCE, GenerateNonce(timestamp)));
- resp.AddAttribute(new StunByteStringAttribute(
- STUN_ATTR_REALM, realm_));
+ rtc::MakeUnique<StunByteStringAttribute>(STUN_ATTR_REALM, realm_));
SendStun(conn, &resp);
}
@@ -483,8 +483,8 @@ void TurnServer::SendErrorResponseWithAlternateServer(
TurnMessage resp;
InitErrorResponse(msg, STUN_ERROR_TRY_ALTERNATE,
STUN_ERROR_REASON_TRY_ALTERNATE_SERVER, &resp);
- resp.AddAttribute(new StunAddressAttribute(
- STUN_ATTR_ALTERNATE_SERVER, addr));
+ resp.AddAttribute(
+ rtc::MakeUnique<StunAddressAttribute>(STUN_ATTR_ALTERNATE_SERVER, addr));
SendStun(conn, &resp);
}
@@ -492,8 +492,8 @@ void TurnServer::SendStun(TurnServerConnection* conn, StunMessage* msg) {
rtc::ByteBufferWriter buf;
// Add a SOFTWARE attribute if one is set.
if (!software_.empty()) {
- msg->AddAttribute(
- new StunByteStringAttribute(STUN_ATTR_SOFTWARE, software_));
+ msg->AddAttribute(rtc::MakeUnique<StunByteStringAttribute>(
+ STUN_ATTR_SOFTWARE, software_));
}
msg->Write(&buf);
Send(conn, buf);
@@ -651,16 +651,15 @@ void TurnServerAllocation::HandleAllocateRequest(const TurnMessage* msg) {
TurnMessage response;
InitResponse(msg, &response);
- StunAddressAttribute* mapped_addr_attr =
- new StunXorAddressAttribute(STUN_ATTR_XOR_MAPPED_ADDRESS, conn_.src());
- StunAddressAttribute* relayed_addr_attr =
- new StunXorAddressAttribute(STUN_ATTR_XOR_RELAYED_ADDRESS,
- external_socket_->GetLocalAddress());
- StunUInt32Attribute* lifetime_attr =
- new StunUInt32Attribute(STUN_ATTR_LIFETIME, lifetime_secs);
- response.AddAttribute(mapped_addr_attr);
- response.AddAttribute(relayed_addr_attr);
- response.AddAttribute(lifetime_attr);
+ auto mapped_addr_attr = rtc::MakeUnique<StunXorAddressAttribute>(
+ STUN_ATTR_XOR_MAPPED_ADDRESS, conn_.src());
+ auto relayed_addr_attr = rtc::MakeUnique<StunXorAddressAttribute>(
+ STUN_ATTR_XOR_RELAYED_ADDRESS, external_socket_->GetLocalAddress());
+ auto lifetime_attr =
+ rtc::MakeUnique<StunUInt32Attribute>(STUN_ATTR_LIFETIME, lifetime_secs);
+ response.AddAttribute(std::move(mapped_addr_attr));
+ response.AddAttribute(std::move(relayed_addr_attr));
+ response.AddAttribute(std::move(lifetime_attr));
SendResponse(&response);
}
@@ -680,9 +679,9 @@ void TurnServerAllocation::HandleRefreshRequest(const TurnMessage* msg) {
TurnMessage response;
InitResponse(msg, &response);
- StunUInt32Attribute* lifetime_attr =
- new StunUInt32Attribute(STUN_ATTR_LIFETIME, lifetime_secs);
- response.AddAttribute(lifetime_attr);
+ auto lifetime_attr =
+ rtc::MakeUnique<StunUInt32Attribute>(STUN_ATTR_LIFETIME, lifetime_secs);
+ response.AddAttribute(std::move(lifetime_attr));
SendResponse(&response);
}
@@ -819,10 +818,10 @@ void TurnServerAllocation::OnExternalPacket(
msg.SetType(TURN_DATA_INDICATION);
msg.SetTransactionID(
rtc::CreateRandomString(kStunTransactionIdLength));
- msg.AddAttribute(new StunXorAddressAttribute(
+ msg.AddAttribute(rtc::MakeUnique<StunXorAddressAttribute>(
STUN_ATTR_XOR_PEER_ADDRESS, addr));
- msg.AddAttribute(new StunByteStringAttribute(
- STUN_ATTR_DATA, data, size));
+ msg.AddAttribute(
+ rtc::MakeUnique<StunByteStringAttribute>(STUN_ATTR_DATA, data, size));
server_->SendStun(&conn_, &msg);
} else {
LOG_J(LS_WARNING, this) << "Received external packet without permission, "
« no previous file with comments | « webrtc/p2p/base/turnport.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698