forked from Velocidex/velociraptor
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathsemantic.proto
56 lines (41 loc) · 1.47 KB
/
semantic.proto
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
syntax = "proto3";
import "google/protobuf/descriptor.proto"; // for FieldOptions
package proto;
option go_package = "www.velocidex.com/golang/velociraptor/proto";
message SemanticDescriptor {
// The semantic name of the SemanticValue contained in this field.
string type = 1;
// The type of this field can be specified dynamically. This is the name of
// the attribute to use to retrieve the SemanticValue class to be used for
// parsing this field.
string dynamic_type = 5;
string description = 2;
// A JSON encoded default. This should be the same type as the
// field it describes.
string default = 6;
enum Labels {
DEFAULT = 0;
ADVANCED = 1; // Field should be offered for modification by advanced users
// only.
HIDDEN = 2; // Field should be hidden from UIs - typically for internally
// generated and used fields.
};
repeated Labels label = 3;
// A friendly name for this field - to be used in GUIs etc.
string friendly_name = 4;
}
message SemanticMessageDescriptor {
// Describe the purpose of this protobuf.
string description = 1;
string friendly_name = 3;
}
extend google.protobuf.FieldOptions {
SemanticDescriptor sem_type = 51584972;
}
extend google.protobuf.MessageOptions {
SemanticMessageDescriptor semantic = 51584971;
}
extend google.protobuf.EnumValueOptions {
string description = 48651165;
SemanticDescriptor.Labels label = 48651166;
}