scnhdr(4) scnhdr(4)NAME scnhdr - section header for a common object file SYNOPSIS #include <scnhdr.h> DESCRIPTION Every common object file has a table of section headers to specify the layout of the data within the file. Each sec- tion within an object file has its own header. The C struc- ture appears below. struct scnhdr { char s_name[SYMNMLEN]; /* section name */ long s_paddr; /* physical address */ long s_vaddr; /* virtual address */ long s_size; /* section size */ long s_scnptr; /* file ptr to raw data */ long s_relptr; /* file ptr to relocation */ long s_lnnoptr; /* file ptr to line numbers */ unsigned short s_nreloc; /* # reloc entries */ unsigned short s_nlnno; /* # line number entries */ long s_flags; /* flags */ } ; File pointers are byte offsets into the file; they can be used as the offset in a call to fseek(3S). If a section is initialized, the file contains the actual bytes. An unini- tialized section is somewhat different. It has a size, sym- bols defined in it, and symbols that refer to it, but it can have no relocation entries, line numbers, or data. Conse- quently, an uninitialized section has no raw data in the ob- ject file, and the values for s_scnptr, s_relptr, s_lnnoptr, s_nreloc, and s_nlnno are zero. SEE ALSO ld(1), fseek(3S), a.out(4). April, 1990 1