Skip to content

[Python] set_user_inline_during_analysis wrapper non-functional with confidence type #8153

@VisualEhrmanntraut

Description

@VisualEhrmanntraut

working snippet:

for func in bv.functions:
    if func.inline_during_analysis.confidence == 255:
        val = core.BNInlineDuringAnalysisWithConfidence()
        val.value = InlineDuringAnalysis.DoNotInlineCall
        val.confidence = 0
		
        core.BNSetUserFunctionInlinedDuringAnalysis(
            func.handle,
            val
        )

non-working snippet:

for func in bv.functions:
	if func.inline_during_analysis.confidence == 255:
		func.inline_during_analysis = InlineDuringAnalysisWithConfidence(InlineDuringAnalysis.DoNotInlineCall, confidence=0) # same for func.set_user_inline_during_analysis(InlineDuringAnalysisWithConfidence(InlineDuringAnalysis.DoNotInlineCall, confidence=0))

traceback:

Traceback (most recent call last):
  File "<console>", line 3, in <module>
  File "/Applications/Binary Ninja.app/Contents/MacOS/plugins/../../Resources/python/binaryninja/function.py", line 3579, in set_user_inline_during_analysis
    core.BNSetUserFunctionInlinedDuringAnalysis(self.handle, value)
  File "/Applications/Binary Ninja.app/Contents/MacOS/plugins/../../Resources/python/binaryninja/_binaryninjacore.py", line 71689, in BNSetUserFunctionInlinedDuringAnalysis
    return _BNSetUserFunctionInlinedDuringAnalysis(func, inlined)
ctypes.ArgumentError: argument 2: TypeError: expected BNInlineDuringAnalysisWithConfidence instance instead of InlineDuringAnalysisWithConfidence

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions