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

Side by Side Diff: chrome/browser/chromeos/login/login_utils.cc

Issue 654173005: Don't allow restarting to apply custom flags when supervised user creation flow is active (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: logging restart due flags as warning, don't restart for supervised users Created 6 years, 2 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
« no previous file with comments | « no previous file | chrome/browser/chromeos/login/supervised/supervised_user_creation_flow.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chrome/browser/chromeos/login/login_utils.h" 5 #include "chrome/browser/chromeos/login/login_utils.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <set> 8 #include <set>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 129 matching lines...) Expand 10 before | Expand all | Expand 10 after
140 } 140 }
141 141
142 return true; 142 return true;
143 } 143 }
144 144
145 bool CanPerformEarlyRestart() { 145 bool CanPerformEarlyRestart() {
146 // Desktop build is used for development only. Early restart is not supported. 146 // Desktop build is used for development only. Early restart is not supported.
147 if (!base::SysInfo::IsRunningOnChromeOS()) 147 if (!base::SysInfo::IsRunningOnChromeOS())
148 return false; 148 return false;
149 149
150 if (!ChromeUserManager::Get()->GetCurrentUserFlow()->
151 SupportsEarlyRestartToApplyFlags()) {
152 return false;
153 }
154
150 const ExistingUserController* controller = 155 const ExistingUserController* controller =
151 ExistingUserController::current_controller(); 156 ExistingUserController::current_controller();
152 if (!controller) 157 if (!controller)
153 return true; 158 return true;
154 159
155 // Early restart is possible only if OAuth token is up to date. 160 // Early restart is possible only if OAuth token is up to date.
156 161
157 if (controller->password_changed()) 162 if (controller->password_changed())
158 return false; 163 return false;
159 164
(...skipping 232 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 if (!NeedRestartToApplyPerSessionFlags(user_flags, &command_line_difference)) 397 if (!NeedRestartToApplyPerSessionFlags(user_flags, &command_line_difference))
393 return false; 398 return false;
394 399
395 LogCustomSwitches(command_line_difference); 400 LogCustomSwitches(command_line_difference);
396 401
397 about_flags::ReportCustomFlags("Login.CustomFlags", command_line_difference); 402 about_flags::ReportCustomFlags("Login.CustomFlags", command_line_difference);
398 403
399 CommandLine::StringVector flags; 404 CommandLine::StringVector flags;
400 // argv[0] is the program name |CommandLine::NO_PROGRAM|. 405 // argv[0] is the program name |CommandLine::NO_PROGRAM|.
401 flags.assign(user_flags.argv().begin() + 1, user_flags.argv().end()); 406 flags.assign(user_flags.argv().begin() + 1, user_flags.argv().end());
402 VLOG(1) << "Restarting to apply per-session flags..."; 407 LOG(WARNING) << "Restarting to apply per-session flags...";
403 DBusThreadManager::Get()->GetSessionManagerClient()->SetFlagsForUser( 408 DBusThreadManager::Get()->GetSessionManagerClient()->SetFlagsForUser(
404 user_manager::UserManager::Get()->GetActiveUser()->email(), flags); 409 user_manager::UserManager::Get()->GetActiveUser()->email(), flags);
405 AttemptRestart(profile); 410 AttemptRestart(profile);
406 return true; 411 return true;
407 } 412 }
408 413
409 scoped_refptr<Authenticator> LoginUtilsImpl::CreateAuthenticator( 414 scoped_refptr<Authenticator> LoginUtilsImpl::CreateAuthenticator(
410 AuthStatusConsumer* consumer) { 415 AuthStatusConsumer* consumer) {
411 // Screen locker needs new Authenticator instance each time. 416 // Screen locker needs new Authenticator instance each time.
412 if (ScreenLocker::default_screen_locker()) { 417 if (ScreenLocker::default_screen_locker()) {
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
489 CrosSettings* cros_settings = CrosSettings::Get(); 494 CrosSettings* cros_settings = CrosSettings::Get();
490 bool allow_new_user = false; 495 bool allow_new_user = false;
491 cros_settings->GetBoolean(kAccountsPrefAllowNewUser, &allow_new_user); 496 cros_settings->GetBoolean(kAccountsPrefAllowNewUser, &allow_new_user);
492 if (allow_new_user) 497 if (allow_new_user)
493 return true; 498 return true;
494 return cros_settings->FindEmailInList( 499 return cros_settings->FindEmailInList(
495 kAccountsPrefUsers, username, wildcard_match); 500 kAccountsPrefUsers, username, wildcard_match);
496 } 501 }
497 502
498 } // namespace chromeos 503 } // namespace chromeos
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/chromeos/login/supervised/supervised_user_creation_flow.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698