filehdr(4) filehdr(4)
NAME
filehdr - file header for common object files
SYNOPSIS
#include <filehdr.h>
DESCRIPTION
Every common object file begins with a 20-byte header. The
following C struct declaration is used:
struct filehdr
{
unsigned short f_magic ; /* magic number */
unsigned short f_nscns ; /* number of sections */
long f_timdat ; /* time & date stamp */
long f_symptr ; /* file ptr to symtab */
long f_nsyms ; /* # symtab entries */
unsigned short f_opthdr ; /* sizeof(opt hdr) */
unsigned short f_flags ; /* flags */
} ;
fsymptr is the byte offset into the file at which the
symbol table can be found. Its value can be used as the
offset in fseek(3S) to position an I/O stream to the symbol
table. See aouthdr(4) for the structure of the optional
aout header. The valid magic number is:
#define MC68MAGIC 0520 /* magic number */
The value in ftimdat is obtained from the time(2) system
call. Flag bits currently defined are:
#define F_RELFLG 00001 /* relocation entries stripped */
#define F_EXEC 00002 /* file is executable */
#define F_LNNO 00004 /* line numbers stripped */
#define F_LSYMS 00010 /* local symbols stripped */
#define F_MINMAL 00020 /* minimal object file */
#define F_UPDATE 00040 /* update file, ogen produced */
#define F_SWABD 00100 /* file is "pre-swabbed" */
#define F_AR16WR 00200 /* 16-bit DEC host */
#define F_AR32WR 00400 /* 32-bit DEC host */
#define F_AR32W 01000 /* non-DEC host */
#define F_PATCH 02000 /* "patch" list in opt hdr */
SEE ALSO
time(2), fseek(3S), a.out(4), aouthdr(4).
Page 1 (last mod. 1/14/87)