Skip to content

Commit 8f5be2f

Browse files
committed
Add AutoUserSymbol functions
The same as UserSymbol functions except no undo handler stuff
1 parent e8fe432 commit 8f5be2f

File tree

3 files changed

+26
-0
lines changed

3 files changed

+26
-0
lines changed

binaryninjaapi.h

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5705,6 +5705,18 @@ namespace BinaryNinja {
57055705
*/
57065706
void UndefineUserSymbol(Ref<Symbol> sym);
57075707

5708+
/*! Define an auto user symbol, unlike DefineUserSymbol this does not add an undo entry
5709+
5710+
\param sym Symbol to define
5711+
*/
5712+
void DefineAutoUserSymbol(Ref<Symbol> sym);
5713+
5714+
/*! Undefine an auto user symbol, unlike UndefineUserSymbol this does not add an undo entry
5715+
5716+
\param sym Symbol to undefinee
5717+
*/
5718+
void UndefineAutoUserSymbol(Ref<Symbol> sym);
5719+
57085720
/*! Defines an imported Function \c func with a ImportedFunctionSymbol type
57095721

57105722
\param importAddressSym Symbol for the imported function

binaryninjacore.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5710,6 +5710,8 @@ extern "C"
57105710
BINARYNINJACOREAPI void BNUndefineAutoSymbol(BNBinaryView* view, BNSymbol* sym);
57115711
BINARYNINJACOREAPI void BNDefineUserSymbol(BNBinaryView* view, BNSymbol* sym);
57125712
BINARYNINJACOREAPI void BNUndefineUserSymbol(BNBinaryView* view, BNSymbol* sym);
5713+
BINARYNINJACOREAPI void BNDefineAutoUserSymbol(BNBinaryView* view, BNSymbol* sym);
5714+
BINARYNINJACOREAPI void BNUndefineAutoUserSymbol(BNBinaryView* view, BNSymbol* sym);
57135715
BINARYNINJACOREAPI void BNDefineImportedFunction(
57145716
BNBinaryView* view, BNSymbol* importAddressSym, BNFunction* func, BNType* type);
57155717
BINARYNINJACOREAPI BNSymbol* BNDefineAutoSymbolAndVariableOrFunction(

binaryview.cpp

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3141,6 +3141,18 @@ void BinaryView::UndefineUserSymbol(Ref<Symbol> sym)
31413141
}
31423142

31433143

3144+
void BinaryView::DefineAutoUserSymbol(Ref<Symbol> sym)
3145+
{
3146+
BNDefineAutoUserSymbol(m_object, sym->GetObject());
3147+
}
3148+
3149+
3150+
void BinaryView::UndefineAutoUserSymbol(Ref<Symbol> sym)
3151+
{
3152+
BNUndefineAutoUserSymbol(m_object, sym->GetObject());
3153+
}
3154+
3155+
31443156
void BinaryView::DefineImportedFunction(Ref<Symbol> importAddressSym, Ref<Function> func, Ref<Type> type)
31453157
{
31463158
BNDefineImportedFunction(

0 commit comments

Comments
 (0)