| Index: sandbox/src/handle_policy.h
|
| ===================================================================
|
| --- sandbox/src/handle_policy.h (revision 0)
|
| +++ sandbox/src/handle_policy.h (revision 0)
|
| @@ -0,0 +1,43 @@
|
| +// Copyright (c) 2012 The Chromium Authors. All rights reserved.
|
| +// Use of this source code is governed by a BSD-style license that can be
|
| +// found in the LICENSE file.
|
| +
|
| +#ifndef SANDBOX_SRC_HANDLE_POLICY_H__
|
| +#define SANDBOX_SRC_HANDLE_POLICY_H__
|
| +
|
| +#include <string>
|
| +
|
| +#include "base/basictypes.h"
|
| +#include "sandbox/src/crosscall_server.h"
|
| +#include "sandbox/src/nt_internals.h"
|
| +#include "sandbox/src/policy_low_level.h"
|
| +#include "sandbox/src/sandbox_policy.h"
|
| +
|
| +namespace sandbox {
|
| +
|
| +enum EvalResult;
|
| +
|
| +// This class centralizes most of the knowledge related to handle policy
|
| +class HandlePolicy {
|
| + public:
|
| + // Creates the required low-level policy rules to evaluate a high-level
|
| + // policy rule for handles, in particular open or create actions.
|
| + static bool GenerateRules(const wchar_t* name,
|
| + TargetPolicy::Semantics semantics,
|
| + LowLevelPolicy* policy);
|
| +
|
| + // Processes a 'TargetPolicy::DuplicateHandle()' request from the target.
|
| + static DWORD DuplicateHandleProxyAction(EvalResult eval_result,
|
| + const ClientInfo& client_info,
|
| + HANDLE source_handle,
|
| + DWORD target_process_id,
|
| + HANDLE* target_handle,
|
| + DWORD desired_access,
|
| + BOOL inherit_handle,
|
| + DWORD options);
|
| +};
|
| +
|
| +} // namespace sandbox
|
| +
|
| +#endif // SANDBOX_SRC_HANDLE_POLICY_H__
|
| +
|
|
|
| Property changes on: sandbox\src\handle_policy.h
|
| ___________________________________________________________________
|
| Added: svn:eol-style
|
| + LF
|
|
|
|
|