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

📄 net_arp.h

📁 从Luminary官方网站下载的LM3S6000系列的UCos+Tcp/IP的源码, 经本人稍微修改后可直接在IAR6.2下编译通过,里面包括了LM3S6000系列的所有外设UART, PWn....
💻 H
📖 第 1 页 / 共 3 页
字号:
NET_ARP_EXT  NET_TMR_TICK    NetARP_ReqTimeout_tick;                    /* ARP req wait-for-reply timeout (in ticks).   */


#if (NET_CTR_CFG_STAT_EN  == DEF_ENABLED)                               /* --------------- NET ARP STATS -------------- */
NET_ARP_EXT  NET_CTR         NetARP_StatRxPktCtr;                       /* Nbr rx'd       pkts.                         */
NET_ARP_EXT  NET_CTR         NetARP_StatRxMsgProcessedCtr;              /* Nbr rx'd       msgs successfully processed.  */
NET_ARP_EXT  NET_CTR         NetARP_StatRxMsgReqProcessedCtr;           /* Nbr rx'd req   msgs successfully processed.  */
NET_ARP_EXT  NET_CTR         NetARP_StatRxMsgReplyProcessedCtr;         /* Nbr rx'd reply msgs successfully processed.  */

NET_ARP_EXT  NET_CTR         NetARP_StatTxMsgCtr;                       /* Nbr tx'd       msgs.                         */
NET_ARP_EXT  NET_CTR         NetARP_StatTxMsgReqCtr;                    /* Nbr tx'd req   msgs.                         */
NET_ARP_EXT  NET_CTR         NetARP_StatTxMsgReplyCtr;                  /* Nbr tx'd reply msgs.                         */
#endif


#if (NET_CTR_CFG_ERR_EN   == DEF_ENABLED)                               /* --------------- NET ARP ERRS --------------- */
NET_ARP_EXT  NET_CTR         NetARP_ErrNoneAvailCtr;                    /* Nbr ARP cache unavail accesses.              */


NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrHW_TypeCtr;                 /* Nbr rx'd msgs with invalid hw       type.    */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrHW_AddrLenCtr;              /* Nbr rx'd msgs with invalid hw       addr len.*/
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrHW_AddrCtr;                 /* Nbr rx'd msgs with invalid hw       addr.    */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrProtocolTypeCtr;            /* Nbr rx'd msgs with invalid protocol type.    */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrProtocolAddrLenCtr;         /* Nbr rx'd msgs with invalid protocol addr len.*/
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrProtocolAddrCtr;            /* Nbr rx'd msgs with invalid protocol addr.    */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrOpCodeCtr;                  /* Nbr rx'd msgs with invalid op code.          */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrOpAddrCtr;                  /* Nbr rx'd msgs with invalid op code/addr.     */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxHdrMsgLenCtr;                  /* Nbr rx'd msgs with invalid msg len.          */

NET_ARP_EXT  NET_CTR         NetARP_ErrRxPktTargetReplyCtr;             /* Nbr rx'd msgs for  invalid reply msg dest.   */
NET_ARP_EXT  NET_CTR         NetARP_ErrRxPktTargetNotThisHostCtr;       /* Nbr rx'd msgs for  invalid           dest.   */

NET_ARP_EXT  NET_CTR         NetARP_ErrRxPktDiscardedCtr;               /* Nbr rx'd msgs discarded.                     */


NET_ARP_EXT  NET_CTR         NetARP_ErrTxPktDiscardedCtr;               /* Nbr tx   msgs discarded.                     */


#if ((NET_ERR_CFG_ARG_CHK_EXT_EN == DEF_ENABLED) || \
     (NET_ERR_CFG_ARG_CHK_DBG_EN == DEF_ENABLED))
NET_ARP_EXT  NET_CTR         NetARP_ErrNullPtrCtr;                      /* Nbr null   ARP ptr   accesses.               */
#endif

#if  (NET_ERR_CFG_ARG_CHK_EXT_EN == DEF_ENABLED)
NET_ARP_EXT  NET_CTR         NetARP_ErrInvalidAddrLenHW_Ctr;            /* Nbr accesses with invalid hw       addr len. */
NET_ARP_EXT  NET_CTR         NetARP_ErrInvalidAddrLenProtocolCtr;       /* Nbr accesses with invalid protocol addr len. */
#endif

#if  (NET_ERR_CFG_ARG_CHK_DBG_EN == DEF_ENABLED)
NET_ARP_EXT  NET_CTR         NetARP_ErrNotUsedCtr;                      /* Nbr unused ARP cache       accesses.         */

NET_ARP_EXT  NET_CTR         NetARP_ErrInvalidTypeCtr;                  /* Nbr ARP cache invalid type accesses.         */


NET_ARP_EXT  NET_CTR         NetARP_ErrRxInvalidBufIxCtr;               /* Nbr rx   pkts with invalid buf ix.           */

NET_ARP_EXT  NET_CTR         NetARP_ErrTxHdrOpCodeCtr;                  /* Nbr tx   msgs with invalid op code.          */
#endif

#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*********************************************************************************************************
*/

void               NetARP_Init                     (void);


                                                                                    /* ---------- CFG FNCTS ----------- */
CPU_BOOLEAN        NetARP_CfgCacheTimeout          (CPU_INT16U         timeout_sec);

CPU_BOOLEAN        NetARP_CfgCacheAccessedTh       (CPU_INT16U         nbr_access);

CPU_BOOLEAN        NetARP_CfgReqTimeout            (CPU_INT08U         timeout_sec);

CPU_BOOLEAN        NetARP_CfgReqMaxRetries         (CPU_INT08U         max_nbr_retries);


                                                                                    /* --------- STATUS FNCTS --------- */
void               NetARP_ProbeAddrOnNet           (CPU_INT08U        *paddr_protocol,
                                                    NET_ARP_ADDR_LEN   addr_protocol_len,
                                                    NET_ERR           *perr);


                                                                                    /* ----------- RX FNCTS ----------- */
void               NetARP_Rx                       (NET_BUF           *pbuf,
                                                    NET_ERR           *perr);


                                                                                    /* ------- ARP CACHE FNCTS -------- */
void               NetARP_CacheHandler             (NET_BUF           *pbuf,
                                                    NET_ERR           *perr);

                                                                                    /* ---- ARP CACHE STATUS FNCTS ---- */
CPU_INT08U         NetARP_CacheCalcStat            (void);


NET_ARP_ADDR_LEN   NetARP_CacheGetAddrHW           (CPU_INT08U        *paddr_hw,
                                                    NET_ARP_ADDR_LEN   addr_hw_len_buf,
                                                    CPU_INT08U        *paddr_protocol,
                                                    NET_ARP_ADDR_LEN   addr_protocol_len,
                                                    NET_ERR           *perr);


NET_STAT_POOL      NetARP_CachePoolStatGet         (void);

void               NetARP_CachePoolStatResetMaxUsed(void);


/*
*********************************************************************************************************
*                                         FUNCTION PROTOTYPES
*                     DEFINED IN NETWORK INTERFACE LAYER & NETWORK PROTOCOL LAYER
*********************************************************************************************************
*/

CPU_INT08U        *NetARP_GetHostAddrPtrHW         (void);

CPU_INT08U        *NetARP_GetHostAddrPtrProtocol   (void);


CPU_BOOLEAN        NetARP_IsValidAddrHW            (CPU_INT08U        *paddr_hw);

CPU_BOOLEAN        NetARP_IsValidAddrProtocol      (CPU_INT08U        *paddr_protocol);


/*$PAGE*/
/*
*********************************************************************************************************
*                                        CONFIGURATION ERRORS
*********************************************************************************************************
*/

#ifndef  NET_ARP_CFG_HW_TYPE
#error  "NET_ARP_CFG_HW_TYPE                  not #define'd in 'net_cfg.h'"
#error  "                               [MUST be  NET_ARP_HW_TYPE_ETHER]  "
#elif   (NET_ARP_CFG_HW_TYPE != NET_ARP_HW_TYPE_ETHER)
#error  "NET_ARP_CFG_HW_TYPE            illegally #define'd in 'net_cfg.h'"
#error  "                               [MUST be  NET_ARP_HW_TYPE_ETHER]  "

#else
                                                            /* Correctly configured in 'net_cfg_net.h'; DO NOT MODIFY.  */
#ifndef  NET_ARP_CFG_HW_ADDR_LEN
#error  "NET_ARP_CFG_HW_ADDR_LEN              not #define'd in 'net_cfg_net.h'"
#error  "                               [MUST be  NET_ARP_HW_ADDR_LEN_ETHER]  "
#elif   (NET_ARP_CFG_HW_ADDR_LEN != NET_ARP_HW_ADDR_LEN_ETHER)
#error  "NET_ARP_CFG_HW_ADDR_LEN        illegally #define'd in 'net_cfg_net.h'"
#error  "                               [MUST be  NET_ARP_HW_ADDR_LEN_ETHER]  "
#endif

#endif



#ifndef  NET_ARP_CFG_PROTOCOL_TYPE
#error  "NET_ARP_CFG_PROTOCOL_TYPE            not #define'd in 'net_cfg.h'    "
#error  "                               [MUST be  NET_ARP_PROTOCOL_TYPE_IP_V4]"
#elif   (NET_ARP_CFG_PROTOCOL_TYPE != NET_ARP_PROTOCOL_TYPE_IP_V4)
#error  "NET_ARP_CFG_PROTOCOL_TYPE      illegally #define'd in 'net_cfg.h'    "
#error  "                               [MUST be  NET_ARP_PROTOCOL_TYPE_IP_V4]"

#else
                                                            /* Correctly configured in 'net_cfg_net.h'; DO NOT MODIFY.  */
#ifndef  NET_ARP_CFG_PROTOCOL_ADDR_LEN
#error  "NET_ARP_CFG_PROTOCOL_ADDR_LEN        not #define'd in 'net_cfg_net.h'    "
#error  "                               [MUST be  NET_ARP_PROTOCOL_ADDR_LEN_IP_V4]"
#elif   (NET_ARP_CFG_PROTOCOL_ADDR_LEN != NET_ARP_PROTOCOL_ADDR_LEN_IP_V4)
#error  "NET_ARP_CFG_PROTOCOL_ADDR_LEN  illegally #define'd in 'net_cfg_net.h'    "
#error  "                               [MUST be  NET_ARP_PROTOCOL_ADDR_LEN_IP_V4]"
#endif

#endif




#ifndef  NET_ARP_CFG_NBR_CACHE
#error  "NET_ARP_CFG_NBR_CACHE                not #define'd in 'net_cfg.h'"
#error  "                               [MUST be  >     0]                "
#error  "                               [     &&  < 65536]                "
                                                                            /* See 'ARP CACHE QUANTITY DATA TYPE'.      */
#elif  ((NET_ARP_CFG_NBR_CACHE <                   1) || \
        (NET_ARP_CFG_NBR_CACHE > DEF_INT_16U_MAX_VAL))
#error  "NET_ARP_CFG_NBR_CACHE          illegally #define'd in 'net_cfg.h'"
#error  "                               [MUST be  >     0]                "
#error  "                               [     &&  < 65536]                "
#endif




#ifndef  NET_ARP_CFG_ADDR_FLTR_EN
#error  "NET_ARP_CFG_ADDR_FLTR_EN             not #define'd in 'net_cfg.h'"
#error  "                               [MUST be  DEF_DISABLED]           "
#error  "                               [     ||  DEF_ENABLED ]           "
#elif  ((NET_ARP_CFG_ADDR_FLTR_EN != DEF_DISABLED) && \
        (NET_ARP_CFG_ADDR_FLTR_EN != DEF_ENABLED ))
#error  "NET_ARP_CFG_ADDR_FLTR_EN       illegally #define'd in 'net_cfg.h'"
#error  "                               [MUST be  DEF_DISABLED]           "
#error  "                               [     ||  DEF_ENABLED ]           "
#endif


/*$PAGE*/
/*
*********************************************************************************************************
*                                             MODULE END
*
* Note(s) : (1) See 'MODULE  Note #1'.
*********************************************************************************************************
*/

#endif                                                          /* End of ARP module include (see Note #1).             */

⌨️ 快捷键说明

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