Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "remoting/host/gnubby_auth_handler_posix.h" | 5 #include "remoting/host/gnubby_auth_handler_posix.h" |
| 6 | 6 |
| 7 #include <unistd.h> | 7 #include <unistd.h> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 213 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 224 DCHECK(CalledOnValidThread()); | 224 DCHECK(CalledOnValidThread()); |
| 225 | 225 |
| 226 ActiveSockets::iterator iter = active_sockets_.find(connection_id); | 226 ActiveSockets::iterator iter = active_sockets_.find(connection_id); |
| 227 DCHECK(iter != active_sockets_.end()); | 227 DCHECK(iter != active_sockets_.end()); |
| 228 std::string request_data; | 228 std::string request_data; |
| 229 if (!iter->second->GetAndClearRequestData(&request_data)) { | 229 if (!iter->second->GetAndClearRequestData(&request_data)) { |
| 230 SendErrorAndCloseActiveSocket(iter); | 230 SendErrorAndCloseActiveSocket(iter); |
| 231 return; | 231 return; |
| 232 } | 232 } |
| 233 ProcessGnubbyRequest(connection_id, request_data); | 233 ProcessGnubbyRequest(connection_id, request_data); |
| 234 Close(iter); | 234 iter->second->StartReadingRequest( |
| 235 base::Bind(&GnubbyAuthHandlerPosix::OnReadComplete, | |
| 236 base::Unretained(this), connection_id)); | |
| 235 } | 237 } |
| 236 | 238 |
| 237 void GnubbyAuthHandlerPosix::Close(const ActiveSockets::iterator& iter) { | 239 void GnubbyAuthHandlerPosix::Close(const ActiveSockets::iterator& iter) { |
| 238 DCHECK(CalledOnValidThread()); | 240 DCHECK(CalledOnValidThread()); |
| 239 | 241 |
| 240 delete iter->second; | 242 delete iter->second; |
| 241 active_sockets_.erase(iter); | 243 active_sockets_.erase(iter); |
|
Sergey Ulanov
2015/07/16 23:20:54
I think this can be moved in SendErrorAndCloseActi
Wez
2015/07/17 20:51:19
Done.
| |
| 242 } | 244 } |
| 243 | 245 |
| 244 void GnubbyAuthHandlerPosix::CreateAuthorizationSocket() { | 246 void GnubbyAuthHandlerPosix::CreateAuthorizationSocket() { |
| 245 DCHECK(CalledOnValidThread()); | 247 DCHECK(CalledOnValidThread()); |
| 246 | 248 |
| 247 if (!g_gnubby_socket_name.Get().empty()) { | 249 if (!g_gnubby_socket_name.Get().empty()) { |
| 248 // TODO(wez): Should creation of the Unix-domain socket be punted to an | 250 // TODO(wez): Should creation of the Unix-domain socket be punted to an |
| 249 // I/O thread? See crbug.com/509807. | 251 // I/O thread? See crbug.com/509807. |
| 250 { | 252 { |
| 251 base::ThreadRestrictions::ScopedAllowIO allow_io; | 253 base::ThreadRestrictions::ScopedAllowIO allow_io; |
| (...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 294 } | 296 } |
| 295 | 297 |
| 296 void GnubbyAuthHandlerPosix::RequestTimedOut(int connection_id) { | 298 void GnubbyAuthHandlerPosix::RequestTimedOut(int connection_id) { |
| 297 HOST_LOG << "Gnubby request timed out"; | 299 HOST_LOG << "Gnubby request timed out"; |
| 298 ActiveSockets::iterator iter = active_sockets_.find(connection_id); | 300 ActiveSockets::iterator iter = active_sockets_.find(connection_id); |
| 299 if (iter != active_sockets_.end()) | 301 if (iter != active_sockets_.end()) |
| 300 SendErrorAndCloseActiveSocket(iter); | 302 SendErrorAndCloseActiveSocket(iter); |
| 301 } | 303 } |
| 302 | 304 |
| 303 } // namespace remoting | 305 } // namespace remoting |
| OLD | NEW |