//
// Copyright (c) 1998, 1999, 2000, 2001, 2002, Intel Corporation
// All rights reserved.
//
// WARRANTY DISCLAIMER
//
// THESE MATERIALS ARE PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL INTEL OR ITS
// CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
// EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
// PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
// OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY OR TORT (INCLUDING
// NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THESE
// MATERIALS, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
// Intel Corporation is the author of the Materials, and requests that all
// problem reports or change requests be submitted to it directly at
// http: //developer.intel.com/opensource.
//
//
//-------------------------------------------------------------------------------
//-------------------------------------------------------------------------------
//
// ---------------------------------------------------------------------------
// PE32TAB.C created 04/15/93 by Anat Shemer (iSWP-STT)
//
// MOFL's PE32 specific tables
// ---------------------------------------------------------------------------
#include "pe32.h"
// ------------------- Properties set/get functions table -------------------
property_desc PE32_prop_table[] =
{
// Cell 0 is reserved
{
(mfl_get_func)NULL, (mfl_set_func)NULL
},
// MFL_PROP_OBJ_TYPE
{
mfl_get_obj_type, (mfl_set_func)NULL
},
// MFL_PROP_OBJ_PARENT
{
mfl_get_obj_parent, (mfl_set_func)NULL
},
// MFL_PROP_OBJ_OMF
{
mfl_get_obj_omf, (mfl_set_func)NULL
},
// MFL_PROP_OBJ_USER_DATA_PTR
{
mfl_get_obj_user_data_ptr, mfl_set_obj_user_data_ptr
},
// MFL_PROP_OBJ_USER_DATA_ADDR
{
mfl_get_obj_user_data_addr, mfl_set_obj_user_data_addr
},
// MFL_PROP_OBJ_USER_DATA_OD
};
// ------------------------ PE32_create_tbl ---------------------------------
mfl_create_func PE32_create_tbl[] =
{
(mfl_create_func)NULL, // 0 - Reserved
PE32_create_file, // MFL_OBJ_FILE
PE32_create_secgrp, // MFL_OBJ_SECGRP
PE32_create_section, // MFL_OBJ_SECTION
PE32_create_reloc_entry, // MFL_OBJ_RELOC_ENTRY
PE32_create_symtab, // MFL_OBJ_SYMTAB
PE32_create_symbol, // MFL_OBJ_SYMBOL
(mfl_create_func)NULL, // MFL_OBJ_LINEGRP | PE32_create_linegrp
(mfl_create_func)NULL // MFL_OBJ_LINE_ENTRY | PE32_create_line_entry
};
#ifdef PECOFF32_EM
// ------------------------ PE3264_create_tbl ---------------------------------
mfl_create_func PE3264_create_tbl[] =
{
(mfl_create_func)NULL, // 0 - Reserved
PE3264_create_file, // MFL_OBJ_FILE
PE32_create_secgrp, // MFL_OBJ_SECGRP
PE32_create_section, // MFL_OBJ_SECTION
PE32_create_reloc_entry, // MFL_OBJ_RELOC_ENTRY
PE32_create_symtab, // MFL_OBJ_SYMTAB
PE32_create_symbol, // MFL_OBJ_SYMBOL
(mfl_create_func)NULL, // MFL_OBJ_LINEGRP | PE32_create_linegrp
(mfl_create_func)NULL // MFL_OBJ_LINE_ENTRY | PE32_create_line_entry
};
#endif
#ifdef DUMMY_CODE
// ------------------------ PE32_copy_tbl ---------------------------------
mfl_copy_func PE32_copy_tbl[] =
{
(mfl_copy_func)NULL, // 0 - Reserved
PE32_copy_file, // MFL_OBJ_FILE
PE32_copy_secgrp, // MFL_OBJ_SECGRP
PE32_copy_section, // MFL_OBJ_SECTION
PE32_copy_reloc_entry, // MFL_OBJ_RELOC_ENTRY
PE32_copy_symtab, // MFL_OBJ_SYMTAB
PE32_copy_symbol, // MFL_OBJ_SYMBOL
(mfl_copy_func)NULL, // MFL_OBJ_LINEGRP
(mfl_copy_func)NULL // MFL_OBJ_LINE_ENTRY
};
#endif // DUMMY_CODE
// ------------------- PE32_delete_tbl -------------------
mfl_delete_func PE32_delete_tbl[] =
{
(mfl_delete_func)NULL, // 0 - Reserved
(mfl_delete_func)NULL, // MFL_OBJ_FILE | PE32_delete_file,
(mfl_delete_func)NULL, // MFL_OBJ_SECGRP | PE32_delete_secgrp,
(mfl_delete_func)NULL, // MFL_OBJ_SECTION | PE32_delete_section,
PE32_delete_reloc_entry, // MFL_OBJ_RELOC_ENTRY
(mfl_delete_func)NULL, // MFL_OBJ_SYMTAB | PE32_delete_symtab,
(mfl_delete_func)NULL, // MFL_OBJ_SYMBOL | PE32_delete_symbol
(mfl_delete_func)NULL, // MFL_OBJ_LINEGRP
(mfl_delete_func)NULL // MFL_OBJ_LINE_ENTRY
};
#ifdef DUMMY_CODE
// ------------------------ PE32_move_tbl ---------------------------------
mfl_move_func PE32_move_tbl[] =
{
(mfl_move_func)NULL, // 0 - Reserved
PE32_move_file, // MFL_OBJ_FILE
(mfl_move_func)NULL, // MFL_OBJ_SECGRP
(mfl_move_func)NULL, // MFL_OBJ_SECTION
(mfl_move_func)NULL, // MFL_OBJ_RELOC_ENTRY
(mfl_move_func)NULL, // MFL_OBJ_SYMTAB
(mfl_move_func)NULL, // MFL_OBJ_SYMBOL
(mfl_move_func)NULL, // MFL_OBJ_LINEGRP
(mfl_move_func)NULL // MFL_OBJ_LINE_ENTRY
};
#endif // DUMMY_CODE