| IDA SDK

Macros
Plugin features

## Detailed Description

Used by plugin_t::flags.

## Macros
#define | PLUGIN_MOD 0x0001
| Plugin changes the database. More...
#define | PLUGIN_DRAW 0x0002
| IDA should redraw everything after calling the plugin.
#define | PLUGIN_SEG 0x0004
| Plugin may be applied only if the current address belongs to a segment.
#define | PLUGIN_UNL 0x0008
| Unload the plugin immediately after calling 'run'. More...
#define | PLUGIN_HIDE 0x0010
| Plugin should not appear in the Edit, Plugins menu. More...
#define | PLUGIN_DBG 0x0020
| A debugger plugin. More...
#define | PLUGIN_PROC 0x0040
| Load plugin when a processor module is loaded. More...
#define | PLUGIN_FIX 0x0080
| Load plugin when IDA starts and keep it in the memory until IDA stops.
#define | PLUGIN_MULTI 0x0100
| The plugin can work with multiple idbs in parallel. More...
#define | PLUGIN_SCRIPTED 0x8000
| Scripted plugin. More...

## Macro Definition Documentation

## ◆ PLUGIN_MOD

#define PLUGIN_MOD 0x0001

Plugin changes the database.

IDA won't call the plugin if the processor module prohibited any changes.

## ◆ PLUGIN_UNL

#define PLUGIN_UNL 0x0008

Unload the plugin immediately after calling 'run'.

This flag may be set anytime. The kernel checks it after each call to 'run' The main purpose of this flag is to ease the debugging of new plugins.

## ◆ PLUGIN_HIDE

#define PLUGIN_HIDE 0x0010

Plugin should not appear in the Edit, Plugins menu.

This flag is checked at the start.

## ◆ PLUGIN_DBG

#define PLUGIN_DBG 0x0020

A debugger plugin.

init() should put the address of debugger_t to dbg.

## ◆ PLUGIN_PROC

#define PLUGIN_PROC 0x0040

Load plugin when a processor module is loaded.

(and keep it until the processor module is unloaded)

## ◆ PLUGIN_MULTI

#define PLUGIN_MULTI 0x0100

The plugin can work with multiple idbs in parallel.

init() returns a pointer to a plugmod_t object run/term functions are not used. Virtual functions of plugmod_t are used instead.

## ◆ PLUGIN_SCRIPTED

#define PLUGIN_SCRIPTED 0x8000

Scripted plugin.

Should not be used by plugins, the kernel sets it automatically.