summaryrefslogtreecommitdiffstats
path: root/src/libr-bfd.h
blob: 7b6ea3e9cd9f4054d52e6af401dfa0baf2727fb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#ifndef __LIBR_BFD_H
#define __LIBR_BFD_H

#include "config.h"

#include <sys/types.h>
#include <stdint.h>
#include <bfd.h>

#if BFD_HOST_64BIT_LONG
	#if defined(__i386)
		#error "Using incorrect binutils header file for architecture."
	#endif
#else
	#if defined(__amd64)
		#error "Using incorrect binutils header file for architecture."
	#endif
#endif

#ifndef DOXYGEN_SHOULD_SKIP_THIS

typedef struct _libr_file {
	int fd_handle;
	bfd *bfd_read;
	bfd *bfd_write;
	char *filename;
	mode_t filemode;
	uid_t fileowner;
	gid_t filegroup;
	char tempfile[LIBR_TEMPFILE_LEN];
	libr_access_t access;
} libr_file;

#endif /* DOXYGEN_SHOULD_SKIP_THIS */

/* for a clean internal API */
typedef asection libr_section;
typedef void libr_data;

#endif /* __LIBR_BFD_H */