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 3 // found in the LICENSE file. 4 5 #ifndef REMOTING_HOST_HOST_EXIT_CODES_H_ 6 #define REMOTING_HOST_HOST_EXIT_CODES_H_ 7 8 namespace remoting { 9 10 // Known host exit codes. The exit codes indicating permanent errors must be in 11 // sync with: 12 // - remoting/host/installer/mac/PrivilegedHelperTools/ 13 // org.chromium.chromoting.me2me.sh 14 // - remoting/host/linux/linux_me2me_host.py 15 enum HostExitCodes { 16 // Error codes that don't indicate a permanent error condition. 17 kSuccessExitCode = 0, 18 kReservedForX11ExitCode = 1, 19 kInitializationFailed = 2, 20 kUsageExitCode = 3, 21 22 // Error codes that do indicate a permanent error condition. 23 kInvalidHostConfigurationExitCode = 100, 24 kInvalidHostIdExitCode = 101, 25 kInvalidOauthCredentialsExitCode = 102, 26 kInvalidHostDomainExitCode = 103, 27 kLoginScreenNotSupportedExitCode = 104, 28 kUsernameMismatchExitCode = 105, 29 30 // The range of the exit codes that should be interpreted as a permanent error 31 // condition. 32 kMinPermanentErrorExitCode = kInvalidHostConfigurationExitCode, 33 kMaxPermanentErrorExitCode = kUsernameMismatchExitCode 34 }; 35 36 const char* ExitCodeToString(HostExitCodes exit_code); 37 } // namespace remoting 38 39 #endif // REMOTING_HOST_HOST_EXIT_CODES_H_ 40