summaryrefslogtreecommitdiffstats
path: root/src/libr-bfd.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/libr-bfd.h')
-rw-r--r--src/libr-bfd.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/src/libr-bfd.h b/src/libr-bfd.h
new file mode 100644
index 0000000..7b6ea3e
--- /dev/null
+++ b/src/libr-bfd.h
@@ -0,0 +1,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 */