mate.poi.analysis.UserStringComparisonLength module

class mate.poi.analysis.UserStringComparisonLength.Sink(call_uuid: 'str', str_ptr_arg_uuid: 'str', str_ptr_arg_op_number: 'int', str_mem_loc_uuid: 'str', str_len_arg_uuid: 'str', str_len_arg_bind_uuid: 'str', context: 'str')

Bases: object

Parameters
  • call_uuid (str) –

  • str_ptr_arg_uuid (str) –

  • str_ptr_arg_op_number (int) –

  • str_mem_loc_uuid (str) –

  • str_len_arg_uuid (str) –

  • str_len_arg_bind_uuid (str) –

  • context (str) –

Return type

None

call_uuid: str
context: str
str_len_arg_bind_uuid: str
str_len_arg_uuid: str
str_mem_loc_uuid: str
str_ptr_arg_op_number: int
str_ptr_arg_uuid: str
class mate.poi.analysis.UserStringComparisonLength.Source(len_input: 'InputSignature', mem_input: 'InputSignature')

Bases: object

Parameters
Return type

None

len_input: InputSignature
mem_input: InputSignature
class mate.poi.analysis.UserStringComparisonLength.UserStringComparisonLength

Bases: mate.poi.poi_types.Analysis

run(session: Session, cpg: db.Graph, _inputs: Dict[str, Any]) Iterator[POIGraphsPair]
Parameters
Return type

Iterator[POIGraphsPair]

class mate.poi.analysis.UserStringComparisonLength.UserStringComparisonLengthPOI(*, insight: str, source: str = None, sink: str = None, salient_functions: List[mate_common.models.analyses.SalientFunction] = [])

Bases: mate_common.models.analyses.POI

Parameters
Return type

None

insight: str

A human-readable piece of “insight” for the POI, in Markdown format.

salient_functions: List[SalientFunction]

A list of SalientFunction models.

Each POI analysis determines which, if any, functions to include in this list.

sink: Optional[str]

A human readable location string for the “sink” of the POI.

source: Optional[str]

A human readable location string for the “source” of the POI.

mate.poi.analysis.UserStringComparisonLength.compute_user_controlled_string_comparison_length(session: Session, cpg: db.Graph) Iterator[Tuple[Source, Sink]]
Parameters
Return type

Iterator[Tuple[Source, Sink]]