IDA SDK
Macros
Set name flags

Detailed Description

Passed as 'flag' parameter to set_name(ea_t, const char *, int)

Macros

#define SN_CHECK   0x00
 
#define SN_NOCHECK   0x01
 Don't fail if the name contains invalid characters. More...
 
#define SN_PUBLIC   0x02
 if set, make name public
 
#define SN_NON_PUBLIC   0x04
 if set, make name non-public
 
#define SN_WEAK   0x08
 if set, make name weak
 
#define SN_NON_WEAK   0x10
 if set, make name non-weak
 
#define SN_AUTO   0x20
 if set, make name autogenerated
 
#define SN_NON_AUTO   0x40
 if set, make name non-autogenerated
 
#define SN_NOLIST   0x80
 if set, exclude name from the list. More...
 
#define SN_NOWARN   0x100
 don't display a warning if failed
 
#define SN_LOCAL   0x200
 create local name. More...
 
#define SN_IDBENC   0x400
 the name is given in the IDB encoding; More...
 
#define SN_FORCE   0x800
 if the specified name is already present More...
 

Macro Definition Documentation

#define SN_NOCHECK   0x01

Don't fail if the name contains invalid characters.

If this bit is clear, all invalid chars (those !is_ident_cp()) will be replaced by SUBSTCHAR List of valid characters is defined in ida.cfg

#define SN_NOLIST   0x80

if set, exclude name from the list.

if not set, then include the name into the list (however, if other bits are set, the name might be immediately excluded from the list).

#define SN_LOCAL   0x200

create local name.

a function should exist. local names can't be public or weak. also they are not included into the list of names they can't have dummy prefixes.

#define SN_IDBENC   0x400

the name is given in the IDB encoding;

non-ASCII bytes will be decoded accordingly

#define SN_FORCE   0x800

if the specified name is already present

in the database, try variations with a numerical suffix like "_123"