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

Side by Side Diff: chrome/browser/local_discovery/wifi/credential_getter_win.cc

Issue 343053002: Credential passing for WifiManager in Windows (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 6 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 unified diff | Download patch
OLDNEW
(Empty)
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
3 // found in the LICENSE file.
4
5 #include "chrome/browser/local_discovery/wifi/credential_getter_win.h"
6 #include "chrome/common/chrome_utility_messages.h"
7 #include "content/public/browser/browser_thread.h"
8 #include "content/public/browser/utility_process_host.h"
9
10 namespace local_discovery {
11
12 namespace wifi {
13
14 CredentialGetterWin::CredentialGetterWin() {
15 }
16
17 CredentialGetterWin::~CredentialGetterWin() {
18 }
19
20 void CredentialGetterWin::StartGetCredentials(
21 const std::string& network_guid,
22 const CredentialsCallback& callback) {
23 callback_ = callback;
24 if (!callback_runner_)
25 callback_runner_ = base::MessageLoopProxy::current();
26 content::BrowserThread::PostTask(
27 content::BrowserThread::IO,
28 FROM_HERE,
29 base::Bind(&CredentialGetterWin::StartOnIOThread, this, network_guid));
30 }
31
32 void CredentialGetterWin::SetCallbackRunner(
33 const scoped_refptr<base::MessageLoopProxy>& callback_runner) {
34 callback_runner_ = callback_runner;
35 }
36
37 void CredentialGetterWin::StartOnIOThread(const std::string& network_guid) {
38 DCHECK_CURRENTLY_ON(content::BrowserThread::IO);
39 content::UtilityProcessHost* host = content::UtilityProcessHost::Create(
40 this, base::MessageLoopProxy::current());
41 host->ElevatePrivileges();
42 host->Send(new ChromeUtilityHostMsg_GetWiFiCredentials(network_guid));
43 }
44
45 bool CredentialGetterWin::OnMessageReceived(const IPC::Message& message) {
46 bool handled = true;
47 IPC_BEGIN_MESSAGE_MAP(CredentialGetterWin, message)
48 IPC_MESSAGE_HANDLER(ChromeUtilityHostMsg_GotWiFiCredentials, OnGotCredentials)
49 IPC_MESSAGE_UNHANDLED(handled = false)
50 IPC_END_MESSAGE_MAP()
51 return handled;
52 }
53
54 void CredentialGetterWin::OnProcessCrashed(int exit_code) {
55 PostCallback(false, "");
stevenjb 2014/06/23 17:12:20 nit: comment args, e.g. PostCallback(false /* succ
Noam Samuel 2014/06/23 17:55:44 Done.
56 }
57
58 void CredentialGetterWin::OnProcessLaunchFailed() {
59 PostCallback(false, "");
60 }
61
62 void CredentialGetterWin::OnGotCredentials(const std::string& key_data,
63 bool success) {
64 PostCallback(success, key_data);
65 }
66
67 void CredentialGetterWin::PostCallback(bool success,
68 const std::string& key_data) {
69 callback_runner_->PostTask(FROM_HERE,
70 base::Bind(callback_, success, key_data));
71 }
72
73 } // namespace wifi
74 } // namespace local_discovery
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698