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_SAS_INJECTOR_H_
6 #define REMOTING_HOST_SAS_INJECTOR_H_
7 
8 #include <memory>
9 
10 namespace remoting {
11 
12 // Provides a way to simulate a Secure Attention Sequence (SAS). The default
13 // sequence is Ctrl+Alt+Delete.
14 class SasInjector {
15  public:
~SasInjector()16   virtual ~SasInjector() {}
17 
18   // Sends Secure Attention Sequence to the console session.
19   virtual bool InjectSas() = 0;
20 
21   // Creates an instance of SasInjector if supported by the OS, otherwise
22   // returns nullptr.
23   static std::unique_ptr<SasInjector> Create();
24 };
25 
26 }  // namespace remoting
27 
28 #endif  // REMOTING_HOST_SAS_INJECTOR_H_
29