Documentation ¶
Index ¶
Constants ¶
View Source
const CoffHdrLen = 20
View Source
const CoffLongNameLen = 32
View Source
const CoffNameLen = 8
View Source
const CoffRelocItemLen = 16
View Source
const CoffSectBSS = uint32(0x0080)
View Source
const CoffSectDATA = uint32(0x0040)
View Source
const CoffSectHdrLen = 40
View Source
const CoffSectTEXT = uint32(0x0020)
View Source
const CoffSymbClassAuto = byte(0x01)
View Source
const CoffSymbClassExternal = byte(0x05)
View Source
const CoffSymbClassFile = byte(0x67)
View Source
const CoffSymbClassGlobal = byte(0x02)
View Source
const CoffSymbClassLabel = byte(0x06)
View Source
const CoffSymbClassStatic = byte(0x03)
View Source
const CoffSymbEntryLen = 18
View Source
const CoffSymbSCNAbs = int16(-1)
View Source
const CoffSymbSCNExt = int16(0)
View Source
const XoutHdrLen = 16 /* header length */
View Source
const XoutMagicNonSeg = 0xee02 /* non segmented, non executable */
View Source
const XoutMagicNonSegSplit = 0xee0a /* non segmented, non executable, split ID */
View Source
const XoutMagicNonSegX = 0xee03 /* non segmented, executable not, shared*/
View Source
const XoutMagicNonSegXSplit = 0xee0b /* non segmented, executable, split ID */
View Source
const XoutMagicSeg = 0xee00 /* segmented, non executable */
View Source
const XoutMagicSegX = 0xee01 /* segmented, executable */
View Source
const XoutNameLen = 8 /* symbol name length */
View Source
const XoutRelocItemLen = 6 /* reloc item length */
View Source
const XoutRelocLSG = byte(3) /* 32bit long segmented */
View Source
const XoutRelocOFF = byte(1) /* 16bit non segmented */
View Source
const XoutRelocSSG = byte(2) /* 16bit short segmented */
View Source
const XoutRelocXLSG = byte(7) /* long segmented referenced by external */
View Source
const XoutRelocXOFF = byte(5) /* 16bit non segmented referenced by external */
View Source
const XoutRelocXSSG = byte(6) /* short segmented referenced by external */
View Source
const XoutSegBSS = byte(1) /* bss segment */
View Source
const XoutSegCDMIX = byte(6) /* mixed code and data, not protectable */
View Source
const XoutSegCDMIX_P = byte(7) /* mixed code and data, protectable */
View Source
const XoutSegCODE = byte(3) /* code segment */
View Source
const XoutSegCONST = byte(4) /* constant pool */
View Source
const XoutSegDATA = byte(5) /* initialized data */
View Source
const XoutSegEntryLen = 4 /* segment entry length */
View Source
const XoutSegSTACK = byte(2) /* stack segment */
View Source
const XoutSegUNDEF = byte(0) /* linker assign the address */
View Source
const XoutSymbEntryLen = 12 /* symbol entry length */
View Source
const XoutSymbGlobal = byte(3) /* global definition */
View Source
const XoutSymbLocal = byte(1) /* local symbol */
View Source
const XoutSymbSeg = byte(4) /* segment name */
View Source
const XoutSymbUndefEX = byte(2) /* undefined external */
Variables ¶
This section is empty.
Functions ¶
func ConvertName ¶
Types ¶
type CoffFile ¶
type CoffFile struct { Filep *os.File Header CoffHdr SectTbl []CoffSectHdr RelocTbl []CoffRelocItem SymbTbl []interface{} CodePart *[]byte }
func (*CoffFile) WriteCodePart ¶
func (*CoffFile) WriteRelocTbl ¶
func (*CoffFile) WriteSectTbl ¶
func (*CoffFile) WriteSymbTbl ¶
type CoffRelocItem ¶
type CoffSectHdr ¶
type CoffSymbAuxFile ¶
type CoffSymbAuxFile struct {
Name [18]byte
}
type CoffSymbAuxSect ¶
type CoffSymbEntry ¶
type XoutFile ¶
type XoutFile struct { Filep *os.File Length int64 CodePos int64 RelocTblPos int64 SymbTblPos int64 NumRelocs int NumSymbs int Header XoutHeader SegTbl []XoutSeg CodePart []byte RelocTbl []XoutRelocItem SymbTbl []XoutSymbEntry }
func (*XoutFile) ReadCodePart ¶
func (*XoutFile) ReadRelocTbl ¶
func (*XoutFile) ReadSegTbl ¶
func (*XoutFile) ReadSymbTbl ¶
type XoutHeader ¶
type XoutRelocItem ¶
Click to show internal directories.
Click to hide internal directories.