OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 // This file implements the common entry point shared by all Chromoting Host | 5 // This file implements the common entry point shared by all Chromoting Host |
6 // processes. | 6 // processes. |
7 | 7 |
8 #include "remoting/host/host_main.h" | 8 #include "remoting/host/host_main.h" |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 23 matching lines...) Expand all Loading... |
34 #include <shellapi.h> | 34 #include <shellapi.h> |
35 #endif // defined(OS_WIN) | 35 #endif // defined(OS_WIN) |
36 | 36 |
37 namespace remoting { | 37 namespace remoting { |
38 | 38 |
39 // Known entry points. | 39 // Known entry points. |
40 int HostProcessMain(); | 40 int HostProcessMain(); |
41 #if defined(OS_WIN) | 41 #if defined(OS_WIN) |
42 int DaemonProcessMain(); | 42 int DaemonProcessMain(); |
43 int DesktopProcessMain(); | 43 int DesktopProcessMain(); |
44 int ElevatedControllerMain(); | |
45 int RdpDesktopSessionMain(); | 44 int RdpDesktopSessionMain(); |
46 #endif // defined(OS_WIN) | 45 #endif // defined(OS_WIN) |
47 | 46 |
48 const char kElevateSwitchName[] = "elevate"; | 47 const char kElevateSwitchName[] = "elevate"; |
49 const char kProcessTypeSwitchName[] = "type"; | 48 const char kProcessTypeSwitchName[] = "type"; |
50 | 49 |
51 const char kProcessTypeController[] = "controller"; | |
52 const char kProcessTypeDaemon[] = "daemon"; | 50 const char kProcessTypeDaemon[] = "daemon"; |
53 const char kProcessTypeDesktop[] = "desktop"; | 51 const char kProcessTypeDesktop[] = "desktop"; |
54 const char kProcessTypeHost[] = "host"; | 52 const char kProcessTypeHost[] = "host"; |
55 const char kProcessTypeRdpDesktopSession[] = "rdp_desktop_session"; | 53 const char kProcessTypeRdpDesktopSession[] = "rdp_desktop_session"; |
56 | 54 |
57 namespace { | 55 namespace { |
58 | 56 |
59 typedef int (*MainRoutineFn)(); | 57 typedef int (*MainRoutineFn)(); |
60 | 58 |
61 // "--help" or "--?" prints the usage message. | 59 // "--help" or "--?" prints the usage message. |
(...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
137 MainRoutineFn SelectMainRoutine(const std::string& process_type) { | 135 MainRoutineFn SelectMainRoutine(const std::string& process_type) { |
138 MainRoutineFn main_routine = nullptr; | 136 MainRoutineFn main_routine = nullptr; |
139 | 137 |
140 if (process_type == kProcessTypeHost) { | 138 if (process_type == kProcessTypeHost) { |
141 main_routine = &HostProcessMain; | 139 main_routine = &HostProcessMain; |
142 #if defined(OS_WIN) | 140 #if defined(OS_WIN) |
143 } else if (process_type == kProcessTypeDaemon) { | 141 } else if (process_type == kProcessTypeDaemon) { |
144 main_routine = &DaemonProcessMain; | 142 main_routine = &DaemonProcessMain; |
145 } else if (process_type == kProcessTypeDesktop) { | 143 } else if (process_type == kProcessTypeDesktop) { |
146 main_routine = &DesktopProcessMain; | 144 main_routine = &DesktopProcessMain; |
147 } else if (process_type == kProcessTypeController) { | |
148 main_routine = &ElevatedControllerMain; | |
149 } else if (process_type == kProcessTypeRdpDesktopSession) { | 145 } else if (process_type == kProcessTypeRdpDesktopSession) { |
150 main_routine = &RdpDesktopSessionMain; | 146 main_routine = &RdpDesktopSessionMain; |
151 #endif // defined(OS_WIN) | 147 #endif // defined(OS_WIN) |
152 } | 148 } |
153 | 149 |
154 return main_routine; | 150 return main_routine; |
155 } | 151 } |
156 | 152 |
157 } // namespace | 153 } // namespace |
158 | 154 |
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
238 return exit_code; | 234 return exit_code; |
239 } | 235 } |
240 | 236 |
241 } // namespace remoting | 237 } // namespace remoting |
242 | 238 |
243 #if !defined(OS_WIN) | 239 #if !defined(OS_WIN) |
244 int main(int argc, char** argv) { | 240 int main(int argc, char** argv) { |
245 return remoting::HostMain(argc, argv); | 241 return remoting::HostMain(argc, argv); |
246 } | 242 } |
247 #endif // !defined(OS_WIN) | 243 #endif // !defined(OS_WIN) |
OLD | NEW |