x86_init man page on DragonFly
[printable version]
x86_init(3) libdisasm x86_init(3)
NAME
x86_init, x86_cleanup - initialize and cleanup libdisasm
SYNOPSIS
#include <libdis.h>
typedef void (*DISASM_REPORTER)( enum x86_report_codes code,
void * data, void * arg );
int x86_init( enum x86_options options, DISASM_REPORTER reporter,
void * arg);
int x86_cleanup(void);
DESCRIPTION
enum x86_options {
opt_none= 0,
opt_ignore_nulls=1, /* ignore sequences of > 4 NULL bytes */
opt_16_bit=2, /* 16-bit/DOS disassembly */
opt_unknown
};
enum x86_report_codes {
report_disasm_bounds,
report_insn_bounds,
report_invalid_insn,
report_unknown
};
EXAMPLES
The following provides a skeleton for initializing and terminating
libdisasm:
void reporter( enum x86_report_codes code, void *data, void *arg ) {
char * str = NULL;
FILE *stream = (FILE *) arg;
if (! stream ) stream = stderr;
/* here would could examine the error and do something useful;
* instead we just print that an error occurred */
switch ( code ) {
case report_disasm_bounds:
str = "Attempt to disassemble RVA "
"beyond end of buffer";
break;
case report_insn_bounds:
str = "Instruction at RVA extends "
"beyond buffer";
break;
case report_invalid_insn:
str = "Invalid opcode at RVA";
break;
case report_unknown:
str = "Unknown Error";
break;
}
fprintf(stream, "ERROR ´%s:´ %p0, str, data);
}
int main( int argc, char **argv ) {
x86_init(opt_none, reporter, stderr);
/* disassembler code goes here */
x86_cleanup();
}
SEE ALSO
libdisasm(7), x86_disasm(3), x86_format_insn(3), x86dis(1)
mammon_ 0.21 x86_init(3)
[top]
List of man pages available for DragonFly
Copyright (c) for man pages and the logo by the respective OS vendor.
For those who want to learn more, the polarhome community provides shell access and support.
[legal]
[privacy]
[GNU]
[policy]
[cookies]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
|
Vote for polarhome
|