mirror of
https://github.com/klzgrad/naiveproxy.git
synced 2024-11-24 22:36:09 +03:00
57 lines
2.2 KiB
Plaintext
57 lines
2.2 KiB
Plaintext
|
// Copyright 2017 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 prefs.mojom;
|
||
|
|
||
|
import "mojo/public/mojom/base/values.mojom";
|
||
|
|
||
|
// A TrackedPreferenceValidationDelegate is notified of the results of each
|
||
|
// tracked preference validation event.
|
||
|
interface TrackedPreferenceValidationDelegate {
|
||
|
enum ValueState {
|
||
|
// The preference value corresponds to its stored hash.
|
||
|
UNCHANGED,
|
||
|
// The preference has been cleared since the last hash.
|
||
|
CLEARED,
|
||
|
// The preference value corresponds to its stored hash, but the hash was
|
||
|
// calculated using a deprecated hash algorithm which is just as safe as
|
||
|
// the current one.
|
||
|
SECURE_LEGACY,
|
||
|
// The preference value has been changed since the last hash.
|
||
|
CHANGED,
|
||
|
// No stored hash exists for the preference value.
|
||
|
UNTRUSTED_UNKNOWN_VALUE,
|
||
|
// No stored hash exists for the preference value, but the current set of
|
||
|
// hashes stored is trusted and thus this value can safely be seeded. This
|
||
|
// happens when all hashes are already properly seeded and a newly
|
||
|
// tracked value needs to be seeded).
|
||
|
TRUSTED_UNKNOWN_VALUE,
|
||
|
// Null values are inherently trusted.
|
||
|
TRUSTED_NULL_VALUE,
|
||
|
// This transaction's store type is not supported.
|
||
|
UNSUPPORTED,
|
||
|
};
|
||
|
|
||
|
// Notifies observes of the result (|value_state|) of checking the atomic
|
||
|
// |value| (which may be null) at |pref_path|. |is_personal| indicates whether
|
||
|
// or not the value may contain personal information.
|
||
|
OnAtomicPreferenceValidation(
|
||
|
string pref_path,
|
||
|
mojo_base.mojom.Value? value,
|
||
|
ValueState value_state,
|
||
|
ValueState external_validation_value_state,
|
||
|
bool is_personal);
|
||
|
|
||
|
// Notifies observes of the result (|value_state|) of checking the split
|
||
|
// value at |pref_path|. |is_personal| indicates whether or not the value may
|
||
|
// contain personal information.
|
||
|
OnSplitPreferenceValidation(
|
||
|
string pref_path,
|
||
|
array<string> invalid_keys,
|
||
|
array<string> external_validation_invalid_keys,
|
||
|
ValueState value_state,
|
||
|
ValueState external_validation_value_state,
|
||
|
bool is_personal);
|
||
|
};
|