⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ethtype.h

📁 vt6528芯片交换机API函数和文档运行程序
💻 H
字号:
/*
 * File:    ethtype.h
 */


#ifndef __ETHTYPE_H__
#define __ETHTYPE_H__

#if !defined(__CCONFIG_H__)
#include "cconfig.h"
#endif




/*---------------------  Export Definitions  ------------------------*/
#define ETH_ADDR_SIZE       6
#define ETH_ADDR_STR_LEN    18          // ethernet addr string format is "66:55:44:33:22:11\0",
                                        // including tailing zero

#define ETH_PKT_MAX_LEN     1518        // max packet length, with vlan tag, w/o CRC
#define ETH_PKT_MIN_LEN     60          // min packet length, w/o vlan tag, w/o CRC

#define ETH_MTU             1500

#define ETH_HDR_SIZE        (sizeof(SEthHdr))

/*---------------------  Export Types  ------------------------------*/
typedef UINT8           MAC_ADDR[ETH_ADDR_SIZE];

STRUCT_PACK_BEGIN(tagSMacAddr)
    UINT8   ea_au8Addr[ETH_ADDR_SIZE];
STRUCT_PACK_END(tagSMacAddr)
typedef struct tagSMacAd        SMacAddr, *PSMacAddr;

STRUCT_PACK_BEGIN(tagSEthHdr)
    UINT8   eh_au8DstAddr[ETH_ADDR_SIZE];
    UINT8   eh_au8SrcAddr[ETH_ADDR_SIZE];
    UINT16  eh_u16Type;
STRUCT_PACK_END(tagSEthHdr)
typedef struct tagSEthHdr       SEthHdr, *PSEthHdr;

/*---------------------  Export Macros  -----------------------------*/

/*---------------------  Export Classes  ----------------------------*/

/*---------------------  Export Variables  --------------------------*/

/*---------------------  Export Functions  --------------------------*/
#if defined(__cplusplus)
extern "C" {                            /* Assume C declarations for C++ */
#endif // __cplusplus


//transfer MAC address value to string
void ETH_vCvtMacValToStr(char* pszMacStr, PUINT8 pu8MacAddr);
//transfer MAC address string to value
void ETH_vCvtMacStrToVal(char* pszMacStr, PUINT8 pu8MacAddr);

BOOL ETH_bIsBroadcast(PUINT8 pu8MacAddr);
// MAC address value is in big endian mode
BOOL ETH_bIsMulticast(PUINT8 pu8MacAddr);


#if defined(__cplusplus)
}                                       /* End of extern "C" { */
#endif // __cplusplus




#endif /* __ETHTYPE_H__ */


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -