从Fishhook到Macho文件格式(二)

/*
 * Format of a symbol table entry of a Mach-O file.  Modified from the BSD
 * format.  The modifications from the original format were changing n_other
 * (an unused field) to n_sect and the addition of the N_SECT type.  These
 * modifications are required to support symbols in an arbitrary number of
 * sections not just the three sections (text, data and bss) in a BSD file.
 */
struct nlist {
	union {
		char *n_name;	/* for use when in-core */
		long  n_strx;	/* index into the string table */
	} n_un;
	unsigned char n_type;	/* type flag, see below */
	unsigned char n_sect;	/* section number or NO_SECT */
	short	      n_desc;	/* see  */
	unsigned long n_value;	/* value of this symbol (or stab offset) */
};复制代码


转载于:https://juejin.im/post/5cc38a5ee51d453f6433a421

你可能感兴趣的:(从Fishhook到Macho文件格式(二))