diff options
author | Mike Frysinger <vapier@gentoo.org> | 2006-01-14 01:39:55 +0000 |
---|---|---|
committer | Mike Frysinger <vapier@gentoo.org> | 2006-01-14 01:39:55 +0000 |
commit | 4147ea63f254164ab5946dda6cfa8d2f256f0ecf (patch) | |
tree | c948442181fba90d2ca7d85f3cc60c02a55d2ad6 /paxelf.h | |
parent | initial support for reading archive files (*.a) (diff) | |
download | pax-utils-4147ea63f254164ab5946dda6cfa8d2f256f0ecf.tar.gz pax-utils-4147ea63f254164ab5946dda6cfa8d2f256f0ecf.tar.bz2 pax-utils-4147ea63f254164ab5946dda6cfa8d2f256f0ecf.zip |
refactor code a bit to allow to improve support for archive scanning
Diffstat (limited to 'paxelf.h')
-rw-r--r-- | paxelf.h | 8 |
1 files changed, 6 insertions, 2 deletions
@@ -1,7 +1,7 @@ /* * Copyright 2005-2006 Gentoo Foundation * Distributed under the terms of the GNU General Public License v2 - * $Header: /var/cvsroot/gentoo-projects/pax-utils/paxelf.h,v 1.39 2006/01/10 01:40:15 vapier Exp $ + * $Header: /var/cvsroot/gentoo-projects/pax-utils/paxelf.h,v 1.40 2006/01/14 01:39:55 vapier Exp $ * * Copyright 2005-2006 Ned Ludd - <solar@gentoo.org> * Copyright 2005-2006 Mike Frysinger - <vapier@gentoo.org> @@ -20,6 +20,7 @@ typedef struct { char elf_class; off_t len; int fd; + int is_mmap; const char *filename; const char *base_filename; } elfobj; @@ -42,8 +43,11 @@ typedef struct { extern char *pax_short_hf_flags(unsigned long flags); extern char *pax_short_pf_flags(unsigned long flags); extern char *gnu_short_stack_flags(unsigned long flags); +extern elfobj *readelf_buffer(const char *filename, char *buffer, size_t buffer_len); +extern elfobj *_readelf_fd(const char *filename, int fd, size_t len, int read_only); +#define readelf_fd(filename, fd, len) _readelf_fd(filename, fd, len, 1) extern elfobj *_readelf(const char *filename, int read_only); -extern elfobj *readelf(const char *filename); +#define readelf(filename) _readelf(filename, 1) extern void unreadelf(elfobj *elf); extern const char *get_elfeitype(int ei_type, int type); extern const char *get_elfetype(elfobj *elf); |