|
IDA C++ SDK 9.2
|
Go to the source code of this file.
Classes | |
| struct | cfgopt_t |
| struct | cfgopt_t::num_range_t |
| struct | cfgopt_t::params_t |
| struct | cfgopt_set_t |
| struct | cfgopt_set_vec_t |
Typedefs | |
| typedef const char *idaapi | set_options_t(const char *keyword, int value_type, const void *value, bool idb_loaded) |
| Callback - called when a config directive is processed in IDA. | |
| typedef const char *idaapi | cfgopt_handler_t(lexer_t *lx, const token_t &keyword, const token_t &value) |
| typedef const char *idaapi | cfgopt_handler2_t(lexer_t *lx, const token_t &keyword, const token_t &value, int64 param1, int64 param2) |
| typedef const char *idaapi | cfgopt_handler3_t(lexer_t *lx, const token_t &keyword, const token_t &value, int64 param1, int64 param2, void *obj) |
| typedef void idaapi | config_changed_cb_t(const cfgopt_t &opt, int vtype, const void *vdata) |
Enumerations | |
| enum | cfg_input_kind_t { cik_string = 0 , cik_filename , cik_path } |
Functions | |
| idaman bool ida_export | parse_config_value (idc_value_t *out, lexer_t *lx, const token_t &value) |
| idaman const char *ida_export | cfgopt_t__apply (const cfgopt_t *_this, int vtype, const void *vdata) |
| idaman const char *ida_export | cfgopt_t__apply2 (const cfgopt_t *_this, int vtype, const void *vdata, void *obj) |
| idaman const char *ida_export | cfgopt_t__apply3 (const cfgopt_t *_this, lexer_t *lx, int vtype, const void *vdata, void *obj) |
| idaman bool ida_export | read_config (const char *input, cfg_input_kind_t input_kind, const cfgopt_t opts[], size_t nopts, cfgopt_handler_t *defhdlr, const char *const *defines=nullptr, size_t ndefines=0) |
| Parse the input, and apply options. | |
| idaman bool ida_export | read_config2 (const char *input, cfg_input_kind_t input_kind, const cfgopt_t opts[], size_t nopts, cfgopt_handler_t *defhdlr, const char *const *defines=nullptr, size_t ndefines=0, void *obj=nullptr) |
| bool | read_config_file2 (const char *filename, const cfgopt_t opts[], size_t nopts, cfgopt_handler_t *defhdlr, const char *const *defines=nullptr, size_t ndefines=0, void *obj=nullptr) |
| bool | read_config_file (const char *filename, const cfgopt_t opts[], size_t nopts, cfgopt_handler_t *defhdlr, const char *const *defines=nullptr, size_t ndefines=0) |
| Search for all IDA system files with the given name. | |
| bool | read_config_string (const char *string, const cfgopt_t opts[], size_t nopts, cfgopt_handler_t *defhdlr, const char *const *defines=nullptr, size_t ndefines=0) |
| For each directive in 'string', the same processing as that of read_config will be performed. | |
| idaman bool ida_export | register_cfgopts (const cfgopt_t opts[], size_t nopts, config_changed_cb_t cb=nullptr, void *obj=nullptr) |
| Register array of config options. | |
| idaman bool ida_export | get_config_value (jvalue_t *out, const char *key) |
| Get json value from ida.cfg. | |
| DECLARE_TYPE_AS_MOVABLE (cfgopt_set_t) | |
| typedef const char *idaapi set_options_t(const char *keyword, int value_type, const void *value, bool idb_loaded) |
Callback - called when a config directive is processed in IDA.
Also see read_config_file() and processor_t::set_idp_options
| keyword | keyword encountered in IDA.CFG/user config file. if nullptr, then an interactive dialog form should be displayed |
| value_type | type of value of the keyword - one of Option value types |
| value | pointer to value |
| idb_loaded | true if the ev_oldfile/ev_newfile events have been generated? |
| typedef const char *idaapi cfgopt_handler_t(lexer_t *lx, const token_t &keyword, const token_t &value) |
| typedef const char *idaapi cfgopt_handler2_t(lexer_t *lx, const token_t &keyword, const token_t &value, int64 param1, int64 param2) |
| typedef const char *idaapi cfgopt_handler3_t(lexer_t *lx, const token_t &keyword, const token_t &value, int64 param1, int64 param2, void *obj) |
| enum cfg_input_kind_t |
| idaman bool ida_export parse_config_value | ( | idc_value_t * | out, |
| lexer_t * | lx, | ||
| const token_t & | value ) |
| idaman const char *ida_export cfgopt_t__apply | ( | const cfgopt_t * | _this, |
| int | vtype, | ||
| const void * | vdata ) |
| idaman const char *ida_export cfgopt_t__apply2 | ( | const cfgopt_t * | _this, |
| int | vtype, | ||
| const void * | vdata, | ||
| void * | obj ) |
| idaman const char *ida_export cfgopt_t__apply3 | ( | const cfgopt_t * | _this, |
| lexer_t * | lx, | ||
| int | vtype, | ||
| const void * | vdata, | ||
| void * | obj ) |
| idaman bool ida_export read_config | ( | const char * | input, |
| cfg_input_kind_t | input_kind, | ||
| const cfgopt_t | opts[], | ||
| size_t | nopts, | ||
| cfgopt_handler_t * | defhdlr, | ||
| const char *const * | defines = nullptr, | ||
| size_t | ndefines = 0 ) |
Parse the input, and apply options.
| input | input file name, or string |
| input_kind | is input a string, filename or file path |
| opts | options destcriptions |
| nopts | the number of entries present in the 'opts' array |
| defhdlr | a handler to be called, if a directive couldn't be found in 'opts' |
| defines | a list of preprocessor identifiers to define (so it is possible to use #ifdef checks in the file.) NB: the actual identifier defined by the parser will be surrounded with double underscores (e.g., passing 'FOO' will result in 'FOO' being defined) Additionally, the parser will also define a similar macro with the current processor name (e.g., ARM) |
| ndefines | the number of defines in the list |
| obj | see cfgopt_t constructor based on the offset of a structure member |
| idaman bool ida_export read_config2 | ( | const char * | input, |
| cfg_input_kind_t | input_kind, | ||
| const cfgopt_t | opts[], | ||
| size_t | nopts, | ||
| cfgopt_handler_t * | defhdlr, | ||
| const char *const * | defines = nullptr, | ||
| size_t | ndefines = 0, | ||
| void * | obj = nullptr ) |
|
inline |
|
inline |
Search for all IDA system files with the given name.
This function will search, in that order, for the following files:
For each directive in each of those files, the same processing as that of read_config will be performed.
|
inline |
For each directive in 'string', the same processing as that of read_config will be performed.
| idaman bool ida_export register_cfgopts | ( | const cfgopt_t | opts[], |
| size_t | nopts, | ||
| config_changed_cb_t | cb = nullptr, | ||
| void * | obj = nullptr ) |
Register array of config options.
This function can be used by a plugin to register the config options. After registering an option, it becomes usable by the process_config_directive() function.
| opts | array of config options |
| nopts | number of options to install. 0 means uninstall |
| cb | callback that will be invoked upon changing a config option |
| obj | see cfgopt_t constructor based on the offset of a structure member |
| idaman bool ida_export get_config_value | ( | jvalue_t * | out, |
| const char * | key ) |
Get json value from ida.cfg.
| out | returned json value |
| key | configuration key |
| DECLARE_TYPE_AS_MOVABLE | ( | cfgopt_set_t | ) |