📄 ida51.patch
字号:
diff -ur idasdk-versions/5.1/include/area.hpp swigsdk-versions/5.1/include/area.hpp--- idasdk-versions/5.1/include/area.hpp 2006-09-20 17:37:08.000000000 +0300+++ swigsdk-versions/5.1/include/area.hpp 2007-09-30 06:56:51.000000000 +0300@@ -57,6 +57,7 @@ };
+#ifndef SWIG
// Internal classes
class sarray; // sorted array - keeps information in Btree.
@@ -603,6 +604,7 @@ { return areacb_t_for_all_areas(this, ea1, ea2, av, ud); }
};
+#endif // SWIG
// Last request information -- for internal use
diff -ur idasdk-versions/5.1/include/bytes.hpp swigsdk-versions/5.1/include/bytes.hpp--- idasdk-versions/5.1/include/bytes.hpp 2007-01-22 04:07:12.000000000 +0200+++ swigsdk-versions/5.1/include/bytes.hpp 2007-12-01 12:25:09.000000000 +0200@@ -1644,9 +1644,9 @@ const uchar *mask, // comparision mask
size_t len, // length of string to search
int step, // direction:
+ int flags);
#define BIN_SEARCH_FORWARD 1
#define BIN_SEARCH_BACKWARD (-1)
- int flags);
#define BIN_SEARCH_CASE 0x01
#define BIN_SEARCH_NOCASE 0x00
#define BIN_SEARCH_NOBREAK 0x02
diff -ur idasdk-versions/5.1/include/dbg.hpp swigsdk-versions/5.1/include/dbg.hpp--- idasdk-versions/5.1/include/dbg.hpp 2006-11-20 13:18:02.000000000 +0200+++ swigsdk-versions/5.1/include/dbg.hpp 2007-09-30 06:56:51.000000000 +0300@@ -31,6 +31,7 @@
idaman debugger_t ida_export_data *dbg; // Current debugger - NULL if no debugger
+#ifndef SWIG
//--------------------------------------------------------------------
// D E B U G G E R C A L L B A C K S
//--------------------------------------------------------------------
@@ -519,6 +520,7 @@ // Notification: none (synchronous function)
bool idaapi is_reg_integer(const char *regname);
+#endif // SWIG
//--------------------------------------------------------------------
// B R E A K P O I N T S
@@ -543,6 +545,7 @@ };
+#ifndef SWIG
// Get number of breakpoints.
// Type: Synchronous function
// Notification: none (synchronous function)
@@ -779,6 +782,7 @@ //--------------------------------------------------------------------
// T R A C I N G E V E N T S
//--------------------------------------------------------------------
+#endif // SWIG
// Trace event types:
enum tev_type_t
@@ -799,6 +803,7 @@ };
+#ifndef SWIG
// Get number of trace events available in trace buffer.
// Type: Synchronous function
// Notification: none (synchronous function)
@@ -877,6 +882,7 @@ // corresponds to a valid breakpoint.
ea_t idaapi get_bpt_tev_ea(int n);
+#endif // SWIG
//--------------------------------------------------------------------
// Utility functions
diff -ur idasdk-versions/5.1/include/expr.hpp swigsdk-versions/5.1/include/expr.hpp--- idasdk-versions/5.1/include/expr.hpp 2006-04-12 16:29:34.000000000 +0300+++ swigsdk-versions/5.1/include/expr.hpp 2007-09-30 06:56:51.000000000 +0300@@ -37,12 +37,16 @@ number of arguments. The actual number of
arguments will be passed in res->num */
+#ifndef SWIG
union
{
+#endif // SWIG
char *str; /* T_str */
sval_t num; /* T_long */
ushort e[6]; /* T_flt */
+#ifndef SWIG
};
+#endif // SWIG
};
diff -ur idasdk-versions/5.1/include/funcs.hpp swigsdk-versions/5.1/include/funcs.hpp--- idasdk-versions/5.1/include/funcs.hpp 2007-02-17 21:04:02.000000000 +0200+++ swigsdk-versions/5.1/include/funcs.hpp 2007-09-30 06:56:51.000000000 +0300@@ -88,10 +88,12 @@ bool is_far(void) const { return (flags & FUNC_FAR) != 0; }
bool does_return(void) const { return (flags & FUNC_NORET) == 0; }
bool analyzed_sp(void) const { return (flags & FUNC_SP_READY) != 0; }
+#ifndef SWIG
union
{
struct // attributes of a function entry chunk
{
+#endif // SWIG
//
// Stack frame of the function. It is represented as a structure:
//
@@ -147,15 +149,19 @@ int tailqty; // number of function tails
area_t *tails; // array of tails, sorted by ea
// use func_tail_iterator_t to access function tails
+#ifndef SWIG
};
struct // attributes of a function tail chunk
{
+#endif // SWIG
ea_t owner; // the address of the main function possessing this tail
int refqty; // number of referers
ea_t *referers; // array of referers (function start addresses)
// use func_parent_iterator_t to access the referers
+#ifndef SWIG
};
};
+#endif // SWIG
};
inline bool is_func_entry(const func_t *pfn) { return pfn != NULL && (pfn->flags & FUNC_TAIL) == 0; }
diff -ur idasdk-versions/5.1/include/ida.hpp swigsdk-versions/5.1/include/ida.hpp--- idasdk-versions/5.1/include/ida.hpp 2007-01-31 16:35:16.000000000 +0200+++ swigsdk-versions/5.1/include/ida.hpp 2007-09-30 06:56:51.000000000 +0300@@ -369,6 +369,7 @@ inline bool idaapi should_create_stkvars(void) { return (inf.af & AF_LVAR) != 0; }
+#ifndef SWIG
// set a 'bit' in 'where' if 'value' if not zero
inline void idaapi setflag(uchar &where,uchar bit,int value)
@@ -390,10 +391,13 @@ else where &= ~bit;
}
+#endif // SWIG
//------------------------------------------------------------------------//
+#ifndef SWIG
#define BADADDR ea_t(-1) // this value is used for 'bad address'
#define BADSEL sel_t(-1) // 'bad selector' value
+#endif // SWIG
// Maximum address allowed to use in the program being disassebled.
// This is obsolete, don't use it!
diff -ur idasdk-versions/5.1/include/idd.hpp swigsdk-versions/5.1/include/idd.hpp--- idasdk-versions/5.1/include/idd.hpp 2006-12-08 16:52:40.000000000 +0200+++ swigsdk-versions/5.1/include/idd.hpp 2007-09-30 06:56:51.000000000 +0300@@ -53,6 +53,7 @@ char name[MAXSTR];
};
+#ifndef SWIG
//====================================================================
//
// Registers
@@ -173,6 +174,7 @@ e_exception_t exc; // EXCEPTION
};
};
+#endif // SWIG
// Hardware breakpoint types
typedef int bpttype_t;
@@ -183,6 +185,7 @@ BPT_SOFT = 4; // Software breakpoint
+#ifndef SWIG
// Exception information
struct exception_info_t
{
@@ -441,6 +444,7 @@ #error "Size of debugger_t is incorrect"
#endif
#endif
+#endif // SWIG
#pragma pack(pop)
#endif // _IDD_HPP
diff -ur idasdk-versions/5.1/include/idp.hpp swigsdk-versions/5.1/include/idp.hpp--- idasdk-versions/5.1/include/idp.hpp 2007-02-09 12:54:06.000000000 +0200+++ swigsdk-versions/5.1/include/idp.hpp 2007-12-06 14:52:16.000000000 +0200@@ -31,6 +31,7 @@
#define IDP_INTERFACE_VERSION 76
+#ifndef SWIG
//-----------------------------------------------------------------------
// AbstractRegister and WorkReg are deprecated!
class WorkReg;
@@ -110,6 +111,7 @@ #define CF_HLL 0x10000 // Instruction may be present in a high level
// language function.
};
+#endif // SWIG
idaman bool ida_export InstrIsSet(int icode,int bit); // does the specified instruction
// have the specified feature?
@@ -119,6 +121,7 @@ idaman bool ida_export is_indirect_jump_insn(ea_t ea);
idaman bool ida_export is_basic_block_end(bool call_insn_stops_block); // in:cmd
+#ifndef SWIG
//-----------------------------------------------------------------------
// Structures related to checkarg_dispatch()
@@ -189,6 +192,7 @@ // arguments: NULL, char * const **outptr
// This callback must be implemented
};
+#endif // SWIG
#ifdef __BORLANDC__
#pragma option pop
@@ -553,6 +557,7 @@ // processor is changed.
// (NULL terminated)
+#ifndef SWIG
//
// Callback function. IDP module can take appropriate
// actions when some events occurs in the kernel.
@@ -1111,6 +1116,7 @@ // defined by the loaders
};
int (idaapi* notify)(idp_notify msgid, ...); // Various notifications for the idp
+#endif // SWIG
// Get the stack variable scaling factor
// Useful for processors who refer to the stack with implicit scaling factor.
@@ -1363,8 +1369,10 @@ int icode_return;
+#ifndef SWIG
// Set IDP-specific option (see below)
set_options_t *set_idp_options;
+#endif // SWIG
// Is the instruction created only for alignment purposes?
// returns: number of bytes in the instruction
@@ -1500,10 +1508,12 @@ idaman char *ida_export get_idp_name(char *buf, size_t bufsize);
+#ifndef SWIG
// Unload the processor module.
// This function is for the kernel only.
void free_processor_module(void);
+#endif // SWIG
// Set target assembler
@@ -1512,11 +1522,13 @@ idaman void ida_export set_target_assembler(int asmnum);
+#ifndef SWIG
// Read IDA.CFG file and configure IDA for the current processor
// This is an internal kernel function.
// It should not be used in modules.
void read_config_file(int npass);
+#endif // SWIG
// get number of bits in a byte at the given address
diff -ur idasdk-versions/5.1/include/kernwin.hpp swigsdk-versions/5.1/include/kernwin.hpp--- idasdk-versions/5.1/include/kernwin.hpp 2007-01-29 05:44:54.000000000 +0200+++ swigsdk-versions/5.1/include/kernwin.hpp 2007-09-30 06:56:51.000000000 +0300@@ -28,8 +28,10 @@ #include <help.h>
#include <llong.hpp>
+#ifndef SWIG
typedef int atype_t; // autoanalysis types
typedef int idastate_t; // ida state indicator (ready, thinking, waiting)
+#endif // SWIG
typedef uchar color_t; // see <lines.hpp>
typedef uval_t bmask_t; // see <enum.hpp>
typedef tid_t enum_t; // see <enum.hpp>
@@ -95,6 +97,7 @@ class value_t;
class linput_t;
+#ifndef SWIG
union callui_t // Return codes (size of this type should be 4 bytes at most)
{ // (otherwise different compilers return it differently)
bool cnd;
@@ -877,6 +880,8 @@ idaman void ida_export vshow_hex_file(linput_t *li, long pos, size_t count, const char *format, va_list va);
+#endif // SWIG
+#ifndef SWIG
//--------------------------------------------------------------------------
// K E R N E L S E R V I C E S F O R U I
//--------------------------------------------------------------------------
@@ -1218,8 +1223,10 @@ { return linearray_t_up(this); }
};
+#endif // SWIG
+#ifndef SWIG
//---------------------------------------------------------------------------
// D E B U G G I N G F U N C T I O N S
//---------------------------------------------------------------------------
@@ -1303,11 +1310,13 @@ vshow_hex_file(li, pos, count, fmt, va);
va_end(va);
}
+#endif // SWIG
//-------------------------------------------------------------------------
// U I S E R V I C E F U N C T I O N S
//-------------------------------------------------------------------------
+#ifndef SWIG
// Common function prototypes
// These functions are inlined for the kernel
// They are not inlined for the user-interfaces
@@ -1466,6 +1475,7 @@ sizer, getl, title, icon, deflt, del,
ins, update, edit, enter, destroy, popup_names, get_icon);
}
+#endif // SWIG
// Navigation band colorizer function
// ea - address to calculate the color of
@@ -1570,6 +1580,7 @@
// Get VCL global variables
+#ifndef SWIG
#if defined(__BORLANDC__)
namespace Forms
{
@@ -1590,6 +1601,7 @@ }
#endif // __BORLANDC__
+#endif // SWIG
#ifdef _WINDOWS_
namespace Forms
@@ -1807,6 +1819,7 @@ }
+#ifndef SWIG
// Pointer to idaview marker function.
// This pointer is initialized by callui(ui_get_marker)
@@ -1839,6 +1852,7 @@ if ( idaview_marker != NULL )
idaview_marker(get_screen_ea());
}
+#endif // SWIG
inline char *choose_idasgn(void)
@@ -1914,6 +1928,7 @@ return callui(ui_choose, chtype_struc, title).strptr;
}
+#ifndef SWIG
inline int choose_struc_path(const char *title, tid_t strid,
uval_t offset, adiff_t delta, bool appzero, tid_t *path)
{
@@ -1978,6 +1993,7 @@ widths, sizer, getl, title, icon, deflt, del, ins,
update, edit, enter, destroy, popup_names, get_icon).i32;
}
+#endif // SWIG
// Display a dialog box with "Please wait..."
@@ -2309,6 +2325,7 @@ return nbytes;
}
+#ifndef SWIG
inline int Message(help_t format,...)
{
va_list va;
@@ -2317,8 +2334,10 @@ va_end(va);
return nbytes;
}
+#endif // SWIG
+#ifndef SWIG
//----------------------------------------------------------------------
// F O R M S - C O M P L E X D I A L O G B O X E S
//----------------------------------------------------------------------
@@ -2534,6 +2553,7 @@ <Names pre~f~ix :A:15:15::>
*/
+#endif // SWIG
//---------------------------------------------------------------------------
// Y E S / N O D I A L O G B O X
@@ -2695,6 +2715,7 @@ #define HIST_TYPE 8 // type declarations
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -