mirror of
https://github.com/mandiant/capa.git
synced 2025-12-12 23:59:48 -08:00
proto: don't use name property due to top level python decorator name
This commit is contained in:
@@ -111,7 +111,7 @@ message FeatureNode {
|
|||||||
ClassFeature class_ = 14;
|
ClassFeature class_ = 14;
|
||||||
NamespaceFeature namespace = 15;
|
NamespaceFeature namespace = 15;
|
||||||
APIFeature api = 16;
|
APIFeature api = 16;
|
||||||
PropertyFeature property = 17;
|
PropertyFeature property_ = 17; // property is a Python top-level decorator name
|
||||||
NumberFeature number = 18;
|
NumberFeature number = 18;
|
||||||
BytesFeature bytes = 19;
|
BytesFeature bytes = 19;
|
||||||
OffsetFeature offset = 20;
|
OffsetFeature offset = 20;
|
||||||
@@ -246,7 +246,7 @@ message OperandOffsetFeature {
|
|||||||
|
|
||||||
message PropertyFeature {
|
message PropertyFeature {
|
||||||
string type = 1;
|
string type = 1;
|
||||||
string property = 2;
|
string property_ = 2; // property is a Python top-level decorator name
|
||||||
optional string access = 3;
|
optional string access = 3;
|
||||||
optional string description = 4;
|
optional string description = 4;
|
||||||
}
|
}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
@@ -397,7 +397,7 @@ class FeatureNode(google.protobuf.message.Message):
|
|||||||
CLASS__FIELD_NUMBER: builtins.int
|
CLASS__FIELD_NUMBER: builtins.int
|
||||||
NAMESPACE_FIELD_NUMBER: builtins.int
|
NAMESPACE_FIELD_NUMBER: builtins.int
|
||||||
API_FIELD_NUMBER: builtins.int
|
API_FIELD_NUMBER: builtins.int
|
||||||
PROPERTY_FIELD_NUMBER: builtins.int
|
PROPERTY__FIELD_NUMBER: builtins.int
|
||||||
NUMBER_FIELD_NUMBER: builtins.int
|
NUMBER_FIELD_NUMBER: builtins.int
|
||||||
BYTES_FIELD_NUMBER: builtins.int
|
BYTES_FIELD_NUMBER: builtins.int
|
||||||
OFFSET_FIELD_NUMBER: builtins.int
|
OFFSET_FIELD_NUMBER: builtins.int
|
||||||
@@ -438,7 +438,8 @@ class FeatureNode(google.protobuf.message.Message):
|
|||||||
@property
|
@property
|
||||||
def api(self) -> global___APIFeature: ...
|
def api(self) -> global___APIFeature: ...
|
||||||
@property
|
@property
|
||||||
def property(self) -> global___PropertyFeature: ...
|
def property_(self) -> global___PropertyFeature:
|
||||||
|
"""property is a Python top-level decorator name"""
|
||||||
@property
|
@property
|
||||||
def number(self) -> global___NumberFeature: ...
|
def number(self) -> global___NumberFeature: ...
|
||||||
@property
|
@property
|
||||||
@@ -472,7 +473,7 @@ class FeatureNode(google.protobuf.message.Message):
|
|||||||
class_: global___ClassFeature | None = ...,
|
class_: global___ClassFeature | None = ...,
|
||||||
namespace: global___NamespaceFeature | None = ...,
|
namespace: global___NamespaceFeature | None = ...,
|
||||||
api: global___APIFeature | None = ...,
|
api: global___APIFeature | None = ...,
|
||||||
property: global___PropertyFeature | None = ...,
|
property_: global___PropertyFeature | None = ...,
|
||||||
number: global___NumberFeature | None = ...,
|
number: global___NumberFeature | None = ...,
|
||||||
bytes: global___BytesFeature | None = ...,
|
bytes: global___BytesFeature | None = ...,
|
||||||
offset: global___OffsetFeature | None = ...,
|
offset: global___OffsetFeature | None = ...,
|
||||||
@@ -481,9 +482,9 @@ class FeatureNode(google.protobuf.message.Message):
|
|||||||
operand_offset: global___OperandOffsetFeature | None = ...,
|
operand_offset: global___OperandOffsetFeature | None = ...,
|
||||||
basic_block: global___BasicBlockFeature | None = ...,
|
basic_block: global___BasicBlockFeature | None = ...,
|
||||||
) -> None: ...
|
) -> None: ...
|
||||||
def HasField(self, field_name: typing_extensions.Literal["api", b"api", "arch", b"arch", "basic_block", b"basic_block", "bytes", b"bytes", "characteristic", b"characteristic", "class_", b"class_", "export", b"export", "feature", b"feature", "format", b"format", "function_name", b"function_name", "import_", b"import_", "match", b"match", "mnemonic", b"mnemonic", "namespace", b"namespace", "number", b"number", "offset", b"offset", "operand_number", b"operand_number", "operand_offset", b"operand_offset", "os", b"os", "property", b"property", "regex", b"regex", "section", b"section", "string", b"string", "substring", b"substring"]) -> builtins.bool: ...
|
def HasField(self, field_name: typing_extensions.Literal["api", b"api", "arch", b"arch", "basic_block", b"basic_block", "bytes", b"bytes", "characteristic", b"characteristic", "class_", b"class_", "export", b"export", "feature", b"feature", "format", b"format", "function_name", b"function_name", "import_", b"import_", "match", b"match", "mnemonic", b"mnemonic", "namespace", b"namespace", "number", b"number", "offset", b"offset", "operand_number", b"operand_number", "operand_offset", b"operand_offset", "os", b"os", "property_", b"property_", "regex", b"regex", "section", b"section", "string", b"string", "substring", b"substring"]) -> builtins.bool: ...
|
||||||
def ClearField(self, field_name: typing_extensions.Literal["api", b"api", "arch", b"arch", "basic_block", b"basic_block", "bytes", b"bytes", "characteristic", b"characteristic", "class_", b"class_", "export", b"export", "feature", b"feature", "format", b"format", "function_name", b"function_name", "import_", b"import_", "match", b"match", "mnemonic", b"mnemonic", "namespace", b"namespace", "number", b"number", "offset", b"offset", "operand_number", b"operand_number", "operand_offset", b"operand_offset", "os", b"os", "property", b"property", "regex", b"regex", "section", b"section", "string", b"string", "substring", b"substring", "type", b"type"]) -> None: ...
|
def ClearField(self, field_name: typing_extensions.Literal["api", b"api", "arch", b"arch", "basic_block", b"basic_block", "bytes", b"bytes", "characteristic", b"characteristic", "class_", b"class_", "export", b"export", "feature", b"feature", "format", b"format", "function_name", b"function_name", "import_", b"import_", "match", b"match", "mnemonic", b"mnemonic", "namespace", b"namespace", "number", b"number", "offset", b"offset", "operand_number", b"operand_number", "operand_offset", b"operand_offset", "os", b"os", "property_", b"property_", "regex", b"regex", "section", b"section", "string", b"string", "substring", b"substring", "type", b"type"]) -> None: ...
|
||||||
def WhichOneof(self, oneof_group: typing_extensions.Literal["feature", b"feature"]) -> typing_extensions.Literal["os", "arch", "format", "match", "characteristic", "export", "import_", "section", "function_name", "substring", "regex", "string", "class_", "namespace", "api", "property", "number", "bytes", "offset", "mnemonic", "operand_number", "operand_offset", "basic_block"] | None: ...
|
def WhichOneof(self, oneof_group: typing_extensions.Literal["feature", b"feature"]) -> typing_extensions.Literal["os", "arch", "format", "match", "characteristic", "export", "import_", "section", "function_name", "substring", "regex", "string", "class_", "namespace", "api", "property_", "number", "bytes", "offset", "mnemonic", "operand_number", "operand_offset", "basic_block"] | None: ...
|
||||||
|
|
||||||
global___FeatureNode = FeatureNode
|
global___FeatureNode = FeatureNode
|
||||||
|
|
||||||
@@ -977,23 +978,24 @@ class PropertyFeature(google.protobuf.message.Message):
|
|||||||
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
DESCRIPTOR: google.protobuf.descriptor.Descriptor
|
||||||
|
|
||||||
TYPE_FIELD_NUMBER: builtins.int
|
TYPE_FIELD_NUMBER: builtins.int
|
||||||
PROPERTY_FIELD_NUMBER: builtins.int
|
PROPERTY__FIELD_NUMBER: builtins.int
|
||||||
ACCESS_FIELD_NUMBER: builtins.int
|
ACCESS_FIELD_NUMBER: builtins.int
|
||||||
DESCRIPTION_FIELD_NUMBER: builtins.int
|
DESCRIPTION_FIELD_NUMBER: builtins.int
|
||||||
type: builtins.str
|
type: builtins.str
|
||||||
property: builtins.str
|
property_: builtins.str
|
||||||
|
"""property is a Python top-level decorator name"""
|
||||||
access: builtins.str
|
access: builtins.str
|
||||||
description: builtins.str
|
description: builtins.str
|
||||||
def __init__(
|
def __init__(
|
||||||
self,
|
self,
|
||||||
*,
|
*,
|
||||||
type: builtins.str = ...,
|
type: builtins.str = ...,
|
||||||
property: builtins.str = ...,
|
property_: builtins.str = ...,
|
||||||
access: builtins.str | None = ...,
|
access: builtins.str | None = ...,
|
||||||
description: builtins.str | None = ...,
|
description: builtins.str | None = ...,
|
||||||
) -> None: ...
|
) -> None: ...
|
||||||
def HasField(self, field_name: typing_extensions.Literal["_access", b"_access", "_description", b"_description", "access", b"access", "description", b"description"]) -> builtins.bool: ...
|
def HasField(self, field_name: typing_extensions.Literal["_access", b"_access", "_description", b"_description", "access", b"access", "description", b"description"]) -> builtins.bool: ...
|
||||||
def ClearField(self, field_name: typing_extensions.Literal["_access", b"_access", "_description", b"_description", "access", b"access", "description", b"description", "property", b"property", "type", b"type"]) -> None: ...
|
def ClearField(self, field_name: typing_extensions.Literal["_access", b"_access", "_description", b"_description", "access", b"access", "description", b"description", "property_", b"property_", "type", b"type"]) -> None: ...
|
||||||
@typing.overload
|
@typing.overload
|
||||||
def WhichOneof(self, oneof_group: typing_extensions.Literal["_access", b"_access"]) -> typing_extensions.Literal["access"] | None: ...
|
def WhichOneof(self, oneof_group: typing_extensions.Literal["_access", b"_access"]) -> typing_extensions.Literal["access"] | None: ...
|
||||||
@typing.overload
|
@typing.overload
|
||||||
|
|||||||
@@ -299,8 +299,8 @@ def feature_to_pb2(f: frzf.Feature) -> capa_pb2.FeatureNode:
|
|||||||
elif isinstance(f, frzf.PropertyFeature):
|
elif isinstance(f, frzf.PropertyFeature):
|
||||||
return capa_pb2.FeatureNode(
|
return capa_pb2.FeatureNode(
|
||||||
type="feature",
|
type="feature",
|
||||||
property=capa_pb2.PropertyFeature(
|
property_=capa_pb2.PropertyFeature(
|
||||||
type=f.type, access=f.access, property=f.property, description=f.description
|
type=f.type, access=f.access, property_=f.property, description=f.description
|
||||||
),
|
),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user