Upstream version 10.39.233.0
[platform/framework/web/crosswalk.git] / src / remoting / host / host_exit_codes.h
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_