blob: d2e11d6a468adc64b6976802365d0a395e2a72a7 [file] [log] [blame]
Steve Anton9de3aac2017-10-24 10:08:26 -07001/*
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 Anton10542f22019-01-11 09:11:00 -080011#include "rtc_base/test_echo_server.h"
Steve Anton9de3aac2017-10-24 10:08:26 -070012
Steve Anton10542f22019-01-11 09:11:00 -080013#include "rtc_base/socket_server.h"
Yves Gerey3e707812018-11-28 16:47:49 +010014
Steve Anton9de3aac2017-10-24 10:08:26 -070015namespace rtc {
16
17TestEchoServer::TestEchoServer(Thread* thread, const SocketAddress& addr)
18 : server_socket_(thread->socketserver()->CreateAsyncSocket(addr.family(),
19 SOCK_STREAM)) {
20 server_socket_->Bind(addr);
21 server_socket_->Listen(5);
22 server_socket_->SignalReadEvent.connect(this, &TestEchoServer::OnAccept);
23}
24
25TestEchoServer::~TestEchoServer() {
26 for (ClientList::iterator it = client_sockets_.begin();
27 it != client_sockets_.end(); ++it) {
28 delete *it;
29 }
30}
31
32} // namespace rtc