diff options
author | H. Peter Anvin <hpa@zytor.com> | 2002-04-30 20:52:08 +0000 |
---|---|---|
committer | H. Peter Anvin <hpa@zytor.com> | 2002-04-30 20:52:08 +0000 |
commit | d7ed89eac9580f280fe0017b22c8e38ca75ed8e3 (patch) | |
tree | 98c4fcdd286b44e14f79aa65271e5caa1c2c7be4 /rdoff/rdoff.h | |
parent | ea8382740dbe5e1607742d0a7c7c139dffcc5ae5 (diff) | |
download | nasm-d7ed89eac9580f280fe0017b22c8e38ca75ed8e3.tar.gz nasm-d7ed89eac9580f280fe0017b22c8e38ca75ed8e3.tar.bz2 nasm-d7ed89eac9580f280fe0017b22c8e38ca75ed8e3.zip |
NASM 0.94
Diffstat (limited to 'rdoff/rdoff.h')
-rw-r--r-- | rdoff/rdoff.h | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/rdoff/rdoff.h b/rdoff/rdoff.h index b022400..0f74b80 100644 --- a/rdoff/rdoff.h +++ b/rdoff/rdoff.h @@ -50,7 +50,7 @@ struct BSSRec { char type; /* must be 5 */ long amount; /* number of bytes BSS to reserve */ }; - + typedef union RDFHeaderRec { char type; /* invariant throughout all below */ struct RelocRec r; /* type == 1 */ @@ -66,10 +66,13 @@ typedef struct RDFFileInfo { long header_len; long code_len; long data_len; + long header_ofs; long code_ofs; long data_ofs; char *header_loc; /* keep location of header */ long header_fp; /* current location within header for reading */ + char *name; /* name of module in libraries */ + int *refcount; /* pointer to reference count on file, or NULL */ } rdffile; #define BUF_BLOCK_LEN 4088 /* selected to match page size (4096) @@ -91,8 +94,11 @@ typedef memorybuffer rdf_headerbuf; /* mask to find actual segment value in relocation records */ #define RDOFF_SEGMENTMASK 63 +extern int rdf_errno; + /* RDOFF file manipulation functions */ int rdfopen(rdffile *f,const char *name); +int rdfopenhere(rdffile *f, FILE *fp, int *refcount, char *name); int rdfclose(rdffile *f); int rdfloadseg(rdffile *f,int segment,void *buffer); rdfheaderrec *rdfgetheaderrec(rdffile *f); /* returns static storage */ |