Main Page   Modules   Alphabetical List   Data Structures   File List   Data Fields   Globals  

IxEthDB.h File Reference

this file contains the public API of IXP425 Ethernet Database (IxEthDB) API component More...

Go to the source code of this file.

Data Structures

struct  IxEthDBMacAddr
 The IEEE 802.3 Ethernet MAC address structure. More...


Defines

#define INLINE
#define IX_ETH_DB_PRIVATE
#define IX_ETH_DB_PUBLIC
#define IX_ETH_DB_PORT_ID_TO_NPE(id)
 port ID => message handler NPE id conversion (0 => NPE_B, 1 => NPE_C)

#define IX_ETH_DB_NPE_TO_PORT_ID(npe)
 message handler NPE id => port ID conversion (NPE_B => 0, NPE_C => 1)

#define IX_IEEE803_MAC_ADDRESS_SIZE
 The size of the MAC address.

#define IX_ETH_DB_MAINTENANCE_TIME
 The ixEthDBDatabaseMaintenance must be called by the user at a frequency of IX_ETH_DB_MAINTENANCE_TIME.

#define IX_ETH_DB_LEARNING_ENTRY_AGE_TIME
 The define specifies the filtering database age entry time. Static entries older than IX_ETH_DB_LEARNING_ENTRY_AGE_TIME +/- IX_ETH_DB_MAINTENANCE_TIME shall be removed.


Typedefs

typedef UINT32 IxEthDBPortId
 Definition of an IXP425 port.

typedef UINT32 IxEthDBPortMap
 Port dependency map definition.


Enumerations

enum  IxEthDBStatus {
  IX_ETH_DB_SUCCESS,
  IX_ETH_DB_FAIL,
  IX_ETH_DB_INVALID_PORT,
  IX_ETH_DB_PORT_UNINITIALIZED,
  IX_ETH_DB_MAC_UNINITIALIZED,
  IX_ETH_DB_INVALID_ARG,
  IX_ETH_DB_NO_SUCH_ADDR,
  IX_ETH_DB_NOMEM,
  IX_ETH_DB_BUSY,
  IX_ETH_DB_END
}
 Ethernet database status. More...


Functions

IX_ETH_DB_PUBLIC IxEthDBStatus ixEthDBInit (void)
 Initializes the Ethernet learning/filtering database.

IX_ETH_DB_PUBLIC void ixEthDBPortInit (IxEthDBPortId portID)
 Initializes a port.

IX_ETH_DB_PUBLIC IxEthDBStatus ixEthDBPortEnable (IxEthDBPortId portID)
 enable a port

IX_ETH_DB_PUBLIC IxEthDBStatus ixEthDBPortDisable (IxEthDBPortId portID)
 disable processing on a port

IX_ETH_DB_PUBLIC IxEthDBStatus ixEthDBPortAddressSet (IxEthDBPortId portID, IxEthDBMacAddr *macAddr)
 set the port MAC address

IxEthDBStatus ixEthDBFilteringPortMaximumFrameSizeSet (IxEthDBPortId portID, UINT32 maximumFrameSize)
 Set the maximum frame size supported on the given port ID.

IxEthDBStatus ixEthDBFilteringStaticEntryProvision (IxEthDBPortId portID, IxEthDBMacAddr *macAddr)
 Populate the Ethernet learning/filtering database with a static MAC address.

IxEthDBStatus ixEthDBFilteringDynamicEntryProvision (IxEthDBPortId portID, IxEthDBMacAddr *macAddr)
 Populate the Ethernet learning/filtering database with a dynamic MAC address.

IxEthDBStatus ixEthDBFilteringEntryDelete (IxEthDBMacAddr *macAddr)
 Remove a MAC address entry from the Ethernet learning/filtering database.

IxEthDBStatus ixEthDBFilteringPortSearch (IxEthDBPortId portID, IxEthDBMacAddr *macAddr)
 Search the Ethernet learning/filtering database for the given MAC address and port ID.

IxEthDBStatus ixEthDBFilteringDatabaseSearch (IxEthDBPortId *portID, IxEthDBMacAddr *macAddr)
 Search the Ethernet learning/filtering database for a MAC address and return the port ID.

IxEthDBStatus ixEthDBFilteringPortUpdatingSearch (IxEthDBPortId *portID, IxEthDBMacAddr *macAddr)
 Search the filtering database for a MAC address, return the port ID and reset the record age.

IxEthDBStatus ixEthDBPortAgingDisable (IxEthDBPortId port)
 Disable the aging function for a specific port.

IxEthDBStatus ixEthDBPortAgingEnable (IxEthDBPortId portID)
 Enable the aging function for a specific port.

void ixEthDBDatabaseMaintenance (void)
 Performs a maintenance operation on the Ethernet learning/filtering database.

IxEthDBStatus ixEthDBFilteringDatabaseShow (IxEthDBPortId portID)
 This function displays the Mac Ethernet MAC address filtering tables.

void ixEthDBFilteringDatabaseShowAll (void)
 Displays the MAC address recorded in the filtering database for all registered ports (see IxEthDBPortDefs.h), grouped by port ID.


Detailed Description

this file contains the public API of IXP425 Ethernet Database (IxEthDB) API component

Version:
Revision
1.15
-- Intel Copyright Notice --
Copyright 2002-2003 Intel Corporation All Rights Reserved.
The source code contained or described herein and all documents related to the source code ("Material") are owned by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or its suppliers and licensors.
The Material is protected by worldwide copyright and trade secret laws and treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted, transmitted, distributed, or disclosed in any way except in accordance with the applicable license agreement .
No license under any patent, copyright, trade secret or other intellectual property right is granted to or conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement, estoppel, except in accordance with the applicable license agreement.
Unless otherwise agreed by Intel in writing, you may not remove or alter this notice or any other notice embedded in Materials by Intel or Intel's suppliers or licensors in any way.
For further details, please see the file README.TXT distributed with this software.
-- End Intel Copyright Notice --

Definition in file IxEthDB.h.

Automatically generated from sources. © Intel Corp. 2003