mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-12-03 18:56:09 +03:00
32 lines
866 B
Plaintext
32 lines
866 B
Plaintext
|
// Copyright 2018 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.
|
||
|
|
||
|
module chrome_cleaner.mojom;
|
||
|
|
||
|
enum SpecialWindowsHandle {
|
||
|
NULL_HANDLE,
|
||
|
INVALID_HANDLE,
|
||
|
CLASSES_ROOT,
|
||
|
CURRENT_CONFIG,
|
||
|
CURRENT_USER,
|
||
|
LOCAL_MACHINE,
|
||
|
USERS,
|
||
|
};
|
||
|
|
||
|
// Mojo's |handle| type passes handles with DUPLICATE_CLOSE_SOURCE. The special
|
||
|
// handles above can't be closed, so they can't be passed as |handle|. Use a
|
||
|
// wrapper that puts these in |special_handle| and plain handles in
|
||
|
// |raw_handle|. Typemapped to HANDLE.
|
||
|
union WindowsHandle {
|
||
|
handle raw_handle;
|
||
|
SpecialWindowsHandle special_handle;
|
||
|
};
|
||
|
|
||
|
interface TestWindowsHandle {
|
||
|
EchoHandle(WindowsHandle in_WindowsHandle) =>
|
||
|
(WindowsHandle out_WindowsHandle);
|
||
|
|
||
|
EchoRawHandle(handle in_handle) => (handle out_handle);
|
||
|
};
|