blob: 1a55550a903545811d9c17cf784f78a134f034cf [file] [log] [blame]
// 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.
syntax = "proto2";
package chrome_cleaner;
option optimize_for = LITE_RUNTIME;
message RegistryFootprint {
enum RegistryFootprintType {
REGISTRY_TYPE_UNSPECIFIED = 0;
REGISTRY_TYPE_BINARY = 1;
REGISTRY_TYPE_DWORD = 2;
REGISTRY_TYPE_QWORD = 3;
REGISTRY_TYPE_DWORD_LITTLE_ENDIAN = 4;
REGISTRY_TYPE_QWORD_LITTLE_ENDIAN = 5;
REGISTRY_TYPE_DWORD_BIG_ENDIAN = 6;
REGISTRY_TYPE_EXPAND_SZ = 7;
REGISTRY_TYPE_MULTI_SZ = 8;
REGISTRY_TYPE_NONE = 9;
REGISTRY_TYPE_SZ = 10;
}
enum RegistryRoot {
REGISTRY_ROOT_UNSPECIFIED = 0;
REGISTRY_ROOT_LOCAL_MACHINE = 1;
REGISTRY_ROOT_USERS = 2;
REGISTRY_ROOT_CLASSES = 3;
REGISTRY_ROOT_CURRENT_USER = 4;
}
enum RegistryAccess {
REGISTRY_ACCESS_UNSPECIFIED = 0;
REGISTRY_ACCESS_WOW64_32 = 1;
REGISTRY_ACCESS_WOW64_64 = 2;
}
optional RegistryFootprintType type = 1;
optional RegistryRoot root = 2;
optional string path = 3;
optional string value_name = 4;
optional bytes content = 5;
optional RegistryAccess access = 6;
}
message DiskFootprint {
enum DiskFootprintType {
DISK_TYPE_UNSPECIFIED = 0;
DISK_TYPE_FILE = 1;
DISK_TYPE_DIRECTORY = 2;
}
enum DiskRoot {
DISK_ROOT_UNSPECIFIED = 0;
DISK_ROOT_ABSOLUTE_PATH = 1;
DISK_ROOT_APPDATA = 2;
DISK_ROOT_COMMON_APPDATA = 3;
DISK_ROOT_LOCAL_APPDATA = 4;
DISK_ROOT_DESKTOP = 5;
DISK_ROOT_PROGRAM_FILES = 6;
DISK_ROOT_PROGRAM_FILESX86 = 7;
DISK_ROOT_PROGRAM_FILES_COMMON = 8;
DISK_ROOT_PROGRAM_FILES_COMMONX86 = 9;
DISK_ROOT_STARTUP = 10;
DISK_ROOT_STARTMENU = 11;
DISK_ROOT_SYSTEM = 12;
DISK_ROOT_WINDOWS = 13;
DISK_ROOT_PROGRAM_FILES6432 = 14;
DISK_ROOT_PROGRAM_FILES_COMMON6432 = 15;
DISK_ROOT_SYSNATIVE = 16;
}
enum DiskContentType {
DISK_CONTENT_TYPE_UNSPECIFIED = 0;
DISK_CONTENT_TYPE_STRING = 1;
DISK_CONTENT_TYPE_ARCHIVE = 2;
}
optional DiskFootprintType type = 1;
optional DiskRoot root = 2;
optional string path = 3;
optional bytes content = 4;
optional DiskContentType content_type = 5;
}
message Snapshot {
optional string name = 1;
repeated DiskFootprint disk_footprints = 2;
repeated RegistryFootprint registry_footprints = 3;
optional bytes archive = 4;
}