aboutsummaryrefslogtreecommitdiff
path: root/src/libmach/elf.h
diff options
context:
space:
mode:
authorrsc <devnull@localhost>2004-12-25 22:03:28 +0000
committerrsc <devnull@localhost>2004-12-25 22:03:28 +0000
commit1cc215aaf92a6cf3cea436f2c215a84839fd59bc (patch)
treedd8524135949b5bd7b3cb3b23e02b09f9646891e /src/libmach/elf.h
parentcdf1805191ba4ab5b8fbb1697a95fe0d32e25ee6 (diff)
downloadplan9port-1cc215aaf92a6cf3cea436f2c215a84839fd59bc.tar.gz
plan9port-1cc215aaf92a6cf3cea436f2c215a84839fd59bc.tar.bz2
plan9port-1cc215aaf92a6cf3cea436f2c215a84839fd59bc.zip
better unwinding for 386.
command-line extraction from core files on linux and freebsd. move linux ureg into ureg386.h (used in many places).
Diffstat (limited to 'src/libmach/elf.h')
-rw-r--r--src/libmach/elf.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/libmach/elf.h b/src/libmach/elf.h
index 6ed239bc..d4b459e1 100644
--- a/src/libmach/elf.h
+++ b/src/libmach/elf.h
@@ -218,6 +218,7 @@ struct Elf
ElfSect *dynsym;
ElfSect *dynstr;
ElfSect *bss;
+ ulong dynamic; /* offset to elf dynamic crap */
int (*coreregs)(Elf*, ElfNote*, uchar**);
};
@@ -227,7 +228,10 @@ Elf* elfinit(int);
ElfSect *elfsection(Elf*, char*);
void elfclose(Elf*);
int elfsym(Elf*, int, ElfSym*);
+int elfsymlookup(Elf*, char*, ulong*);
int elfmap(Elf*, ElfSect*);
int coreregslinux386(Elf*, ElfNote*, uchar**);
int coreregsfreebsd386(Elf*, ElfNote*, uchar**);
+int corecmdlinux386(Elf*, ElfNote*, char**);
+int corecmdfreebsd386(Elf*, ElfNote*, char**);