dmd.scanomf

Extract symbols from an OMF object file.

Authors

Walter Bright

Source: scanomf.d

  • Declaration

    void scanOmfObjModule(void delegate(const(char)[] name, int pickAny) pAddSymbol, scope const ubyte[] base, scope const char* module_name, Loc loc, ErrorSink eSink);

    Reads an object module from base[] and passes the names of any exported symbols to (*pAddSymbol)().

    Parameters

    void delegate(const(char)[] name, int pickAny) pAddSymbol

    function to pass the names to

    ubyte[] base

    array of contents of object module

    char* module_name

    name of the object module (used for error messages)

    Loc loc

    location to use for error printing

    ErrorSink eSink

    where the error messages go

  • Declaration

    bool scanOmfLib(void delegate(char* name, void* base, size_t length) pAddObjModule, scope void* buf, size_t buflen, uint pagesize);

    Scan a block of memory buf[0..buflen], pulling out each OMF object module in it and sending the info in it to (*pAddObjModule).

    Return Value

    true for corrupt OMF data