15821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Copyright (c) 2012 The Chromium Authors. All rights reserved. 25821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 35821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// found in the LICENSE file. 45821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 55821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#ifndef SANDBOX_TESTS_VALIDATION_TESTS_COMMANDS_H__ 65821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#define SANDBOX_TESTS_VALIDATION_TESTS_COMMANDS_H__ 75821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 85d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include <windows.h> 95d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)#include "base/strings/string16.h" 115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 125821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)namespace sandbox { 135821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 145821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Checks if window is a real window. Returns a SboxTestResult. 155821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int TestValidWindow(HWND window); 165821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 175821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open the process_id. Returns a SboxTestResult. 185821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int TestOpenProcess(DWORD process_id, DWORD access_mask); 195821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 205821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open thread_id. Returns a SboxTestResult. 215821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int TestOpenThread(DWORD thread_id); 225821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 235821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open path for read access. Returns a SboxTestResult. 245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)int TestOpenReadFile(const base::string16& path); 255821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 265821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open path for write access. Returns a SboxTestResult. 275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)int TestOpenWriteFile(const base::string16& path); 285821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 295821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open a registry key. 305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)int TestOpenKey(HKEY base_key, base::string16 subkey); 315821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 325821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to open the workstation's input desktop as long as the 335821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// current desktop is not the interactive one. Returns a SboxTestResult. 345821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int TestOpenInputDesktop(); 355821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 365821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)// Tries to switch the interactive desktop. Returns a SboxTestResult. 375821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)int TestSwitchDesktop(); 385821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 39a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// Tries to open the alternate desktop. Returns a SboxTestResult. 40a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)int TestOpenAlternateDesktop(wchar_t *desktop_name); 41a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 42a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// Tries to enumerate desktops on the alternate windowstation. 43a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)// Returns a SboxTestResult. 44a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)int TestEnumAlternateWinsta(); 45a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles) 465821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)} // namespace sandbox 475821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles) 485821806d5e7f356e8fa4b058a389a808ea183019Torne (Richard Coles)#endif // SANDBOX_TESTS_VALIDATION_TESTS_COMMANDS_H__ 49