/* */
/* 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[] =
{
/* 0 - Reserved */ (mfl_create_func)NULL,
/* MFL_OBJ_FILE */ PE32_create_file,
/* MFL_OBJ_SECGRP */ PE32_create_secgrp,
/* MFL_OBJ_SECTION */ PE32_create_section,
/* MFL_OBJ_RELOC_ENTRY */ PE32_create_reloc_entry,
/* MFL_OBJ_SYMTAB */ PE32_create_symtab,
/* MFL_OBJ_SYMBOL */ PE32_create_symbol,
/* MFL_OBJ_LINEGRP */ (mfl_create_func)NULL, /* PE32_create_linegrp */
/* MFL_OBJ_LINE_ENTRY */ (mfl_create_func)NULL /* PE32_create_line_entry */
};
#ifdef PECOFF32_EM
/************************* PE3264_create_tbl **********************************/
mfl_create_func PE3264_create_tbl[] =
{
/* 0 - Reserved */ (mfl_create_func)NULL,
/* MFL_OBJ_FILE */ PE3264_create_file,
/* MFL_OBJ_SECGRP */ PE32_create_secgrp,
/* MFL_OBJ_SECTION */ PE32_create_section,
/* MFL_OBJ_RELOC_ENTRY */ PE32_create_reloc_entry,
/* MFL_OBJ_SYMTAB */ PE32_create_symtab,
/* MFL_OBJ_SYMBOL */ PE32_create_symbol,
/* MFL_OBJ_LINEGRP */ (mfl_create_func)NULL, /* PE32_create_linegrp */
/* MFL_OBJ_LINE_ENTRY */ (mfl_create_func)NULL /* PE32_create_line_entry */
};
#endif
#ifdef DUMMY_CODE
/************************* PE32_copy_tbl **********************************/
mfl_copy_func PE32_copy_tbl[] =
{
/* 0 - Reserved */ (mfl_copy_func)NULL,
/* MFL_OBJ_FILE */ PE32_copy_file,
/* MFL_OBJ_SECGRP */ PE32_copy_secgrp,
/* MFL_OBJ_SECTION */ PE32_copy_section,
/* MFL_OBJ_RELOC_ENTRY */ PE32_copy_reloc_entry,
/* MFL_OBJ_SYMTAB */ PE32_copy_symtab,
/* MFL_OBJ_SYMBOL */ PE32_copy_symbol,
/* MFL_OBJ_LINEGRP */ (mfl_copy_func)NULL,
/* MFL_OBJ_LINE_ENTRY */ (mfl_copy_func)NULL
};
#endif /* DUMMY_CODE */
/******************** PE32_delete_tbl ********************/
mfl_delete_func PE32_delete_tbl[] =
{
/* 0 - Reserved */ (mfl_delete_func)NULL,
/* MFL_OBJ_FILE */ (mfl_delete_func)NULL, /* PE32_delete_file, */
/* MFL_OBJ_SECGRP */ (mfl_delete_func)NULL, /* PE32_delete_secgrp, */
/* MFL_OBJ_SECTION */ (mfl_delete_func)NULL, /* PE32_delete_section,*/
/* MFL_OBJ_RELOC_ENTRY */ PE32_delete_reloc_entry,
/* MFL_OBJ_SYMTAB */ (mfl_delete_func)NULL, /* PE32_delete_symtab, */
/* MFL_OBJ_SYMBOL */ (mfl_delete_func)NULL, /* PE32_delete_symbol */
/* MFL_OBJ_LINEGRP */ (mfl_delete_func)NULL,
/* MFL_OBJ_LINE_ENTRY */ (mfl_delete_func)NULL
};
#ifdef DUMMY_CODE
/************************* PE32_move_tbl **********************************/
mfl_move_func PE32_move_tbl[] =
{
/* 0 - Reserved */ (mfl_move_func)NULL,
/* MFL_OBJ_FILE */ PE32_move_file,
/* 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 */ (mfl_move_func)NULL
};
#endif /* DUMMY_CODE */