亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? net_icmp.c

?? uC/OS原版的TCP協議棧
?? C
?? 第 1 頁 / 共 5 頁
字號:
/*
*********************************************************************************************************
*                                              uC/TCP-IP
*                                      The Embedded TCP/IP Suite
*
*                          (c) Copyright 2003-2006; Micrium, Inc.; Weston, FL
*
*                   All rights reserved.  Protected by international copyright laws.
*                   Knowledge of the source code may not be used to write a similar
*                   product.  This file may only be used in accordance with a license
*                   and should not be redistributed in any way.
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*
*                                          NETWORK ICMP LAYER
*                                 (INTERNET CONTROL MESSAGE PROTOCOL)
*
* Filename      : net_icmp.c
* Version       : V1.86
* Programmer(s) : ITJ
*********************************************************************************************************
* Note(s)       : (1) Supports Internet Control Message Protocol as described in RFC #792 with the following
*                     restrictions/constraints :
*
*                     (a) Does NOT support IP forwarding/routing               RFC #1122, Section 3.3.1
*
*                     (b) Does NOT support IP multicasting                     RFC #1122, Section 3.3.7
*
*                     (c) Does NOT support ICMP Address Mask Agent/Server      RFC #1122, Section 3.2.2.9
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*                                            INCLUDE FILES
*********************************************************************************************************
*/

#define    NET_ICMP_MODULE
#include  <net.h>


/*
*********************************************************************************************************
*                                            LOCAL DEFINES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                           LOCAL CONSTANTS
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                          LOCAL DATA TYPES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                            LOCAL TABLES
*********************************************************************************************************
*/


/*
*********************************************************************************************************
*                                       LOCAL GLOBAL VARIABLES
*********************************************************************************************************
*/


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

                                                                    /* ------------------- RX FNCTS ------------------- */

#if (NET_ERR_CFG_ARG_CHK_DBG_EN == DEF_ENABLED)
static  void                     NetICMP_RxPktValidateBuf         (NET_BUF_HDR             *pbuf_hdr,
                                                                   NET_ERR                 *perr);
#endif

static  void                     NetICMP_RxPktValidate            (NET_BUF                 *pbuf,
                                                                   NET_BUF_HDR             *pbuf_hdr,
                                                                   NET_ICMP_HDR            *picmp_hdr,
                                                                   NET_ERR                 *perr);

static  void                     NetICMP_RxPktFree                (NET_BUF                 *pbuf);

static  void                     NetICMP_RxPktDiscard             (NET_BUF                 *pbuf,
                                                                   NET_ERR                 *perr);


                                                                    /* ------------------- TX FNCTS ------------------- */

static  void                     NetICMP_TxMsgErrValidate         (NET_BUF                 *pbuf,
                                                                   NET_BUF_HDR             *pbuf_hdr,
                                                                   NET_IP_HDR              *pip_hdr,
                                                                   CPU_INT08U               type,
                                                                   CPU_INT08U               code,
                                                                   CPU_INT08U               ptr,
                                                                   NET_ERR                 *perr);


static  void                     NetICMP_TxMsgReqValidate         (CPU_INT08U               type,
                                                                   CPU_INT08U               code,
                                                                   NET_ERR                 *perr);


static  void                     NetICMP_TxMsgReply               (NET_BUF                 *pbuf,
                                                                   NET_BUF_HDR             *pbuf_hdr,
                                                                   NET_ICMP_HDR            *picmp_hdr,
                                                                   NET_ERR                 *perr);



static  void                     NetICMP_TxPktFree                (NET_BUF                 *pbuf);

static  void                     NetICMP_TxPktDiscard             (NET_BUF                 *pbuf,
                                                                   NET_ERR                 *perr);


                                                                    /* ---------------- HANDLER FNCTS ----------------- */

#if (NET_ICMP_CFG_TX_SRC_QUENCH_EN == DEF_ENABLED)
static  void                     NetICMP_HandlerTxSrcQuench       (NET_BUF                 *pbuf);

static  void                     NetICMP_HandlerTxSrcQuenchClrList(void);

static  void                     NetICMP_HandlerTxSrcQuenchClr    (NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);

static  NET_ICMP_TX_SRC_QUENCH  *NetICMP_HandlerTxSrcQuenchGet    (NET_ERR                 *perr);

static  void                     NetICMP_HandlerTxSrcQuenchFree   (NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);

static  void                     NetICMP_HandlerTxSrcQuenchRemove (NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);

static  void                     NetICMP_HandlerTxSrcQuenchInsert (NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);

static  void                     NetICMP_HandlerTxSrcQuenchUnlink (NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);

#if (NET_ERR_CFG_ARG_CHK_DBG_EN  == DEF_ENABLED)
static  void                     NetICMP_HandlerTxSrcQuenchDiscard(NET_ICMP_TX_SRC_QUENCH  *ptx_src_quench);
#endif
#endif


/*
*********************************************************************************************************
*                                     LOCAL CONFIGURATION ERRORS
*********************************************************************************************************
*/


/*$PAGE*/
/*
*********************************************************************************************************
*                                           NetICMP_Init()
*
* Description : (1) Initialize Internet Control Message Protocol Layer :
*
*                   (a) Initialize ICMP transmit source quench :
*                       (1) Initialize ICMP transmit source quench pool
*                           (A) Pool MUST be initialized PRIOR to initializing the pool with pointers to
*                               ICMP transmit source quench entries.
*                       (2) Initialize ICMP transmit source quench table
*                       (3) Initialize ICMP transmit source quench list pointers
*                   (c) Initialize ICMP statistics & error counters
*
*
* Argument(s) : none.
*
* Return(s)   : none.
*
* Caller(s)   : Net_Init().
*
* Note(s)     : none.
*********************************************************************************************************
*/

void  NetICMP_Init (void)
{
#if (NET_ICMP_CFG_TX_SRC_QUENCH_EN == DEF_ENABLED)
    NET_ICMP_TX_SRC_QUENCH   *ptx_src_quench_tbl;
    NET_ICMP_SRC_QUENCH_QTY   i;
    NET_ERR                   err;


                                                                /* -------- INIT ICMP TX SRC QUENCH POOL/STATS -------- */
    NetICMP_TxSrcQuenchPoolPtr = (NET_ICMP_TX_SRC_QUENCH *)0;   /* See Note #1a1A.                                      */

    NetStat_PoolInit((NET_STAT_POOL   *)&NetICMP_TxSrcQuenchPoolStat,
                     (NET_STAT_POOL_QTY) NET_ICMP_CFG_TX_SRC_QUENCH_SIZE,
                     (NET_ERR         *)&err);


                                                                /* ----------- INIT ICMP TX SRC QUENCH TBL ------------ */
    ptx_src_quench_tbl = &NetICMP_TxSrcQuenchTbl[0];
    for (i = 0; i < NET_ICMP_CFG_TX_SRC_QUENCH_SIZE; i++) {
                                                                /* Init each ICMP tx src quench type--NEVER modify.     */
        ptx_src_quench_tbl->Type  = NET_ICMP_TYPE_TX_SRC_QUENCH;

        ptx_src_quench_tbl->Flags = NET_ICMP_FLAG_NONE;         /* Init each ICMP tx src quench as NOT used.            */

#if (NET_DBG_CFG_MEM_CLR_EN == DEF_ENABLED)
        NetICMP_HandlerTxSrcQuenchClr(ptx_src_quench_tbl);
#endif
                                                                /* Free each entry to pool (see Note #1a1A).            */
        ptx_src_quench_tbl->NextPtr = (void *)NetICMP_TxSrcQuenchPoolPtr;    
        NetICMP_TxSrcQuenchPoolPtr  =  ptx_src_quench_tbl;                         

        ptx_src_quench_tbl++;
    }


                                                                /* -------- INIT ICMP TX SRC QUENCH LIST PTRS --------- */
    NetICMP_TxSrcQuenchListHead = (NET_ICMP_TX_SRC_QUENCH *)0;
    NetICMP_TxSrcQuenchListTail = (NET_ICMP_TX_SRC_QUENCH *)0;
#endif


/*$PAGE*/
                                                                /* ------------ INIT ICMP STAT & ERR CTRS ------------- */
    NetICMP_TxSeqNbrCtr                =  0;


#if (NET_CTR_CFG_STAT_EN               == DEF_ENABLED)
    NetICMP_StatRxMsgCtr               =  0;
    NetICMP_StatRxMsgProcessedCtr      =  0;
    NetICMP_StatRxMsgErrProcessedCtr   =  0;
    NetICMP_StatRxMsgReqProcessedCtr   =  0;
    NetICMP_StatRxMsgReplyProcessedCtr =  0;

    NetICMP_StatTxMsgCtr               =  0;
    NetICMP_StatTxMsgErrCtr            =  0;
    NetICMP_StatTxMsgReqCtr            =  0;
    NetICMP_StatTxMsgReplyCtr          =  0;
#endif


#if (NET_CTR_CFG_ERR_EN                == DEF_ENABLED)
    NetICMP_ErrRxHdrTypeCtr            =  0;
    NetICMP_ErrRxHdrCodeCtr            =  0;
    NetICMP_ErrRxHdrMsgLenCtr          =  0;
    NetICMP_ErrRxHdrPtrCtr             =  0;
    NetICMP_ErrRxHdrChkSumCtr          =  0;

    NetICMP_ErrRxBroadcastCtr          =  0;

    NetICMP_ErrRxPktDiscardedCtr       =  0;


    NetICMP_ErrTxInvalidLenCtr         =  0;

    NetICMP_ErrTxHdrTypeCtr            =  0;
    NetICMP_ErrTxHdrCodeCtr            =  0;

    NetICMP_ErrTxPktDiscardedCtr       =  0;


#if (NET_ERR_CFG_ARG_CHK_DBG_EN        == DEF_ENABLED)
    NetICMP_ErrNullPtrCtr              =  0;
    NetICMP_ErrNotUsedCtr              =  0;

    NetICMP_ErrInvalidTypeCtr          =  0;


    NetICMP_ErrRxInvalidBufIxCtr       =  0;

    NetICMP_ErrRxHdrDataLenCtr         =  0;


    NetICMP_ErrTxInvalidBufIxCtr       =  0;

    NetICMP_ErrTxHdrPtrCtr             =  0;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲精品视频自拍| 国产高清久久久久| 国产不卡视频一区| 欧美一区二区三区思思人| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 99视频在线精品| 在线播放亚洲一区| 亚洲情趣在线观看| 成人免费电影视频| 久久久久国产一区二区三区四区| 日本欧洲一区二区| 欧美日韩国产综合一区二区三区| 国产午夜亚洲精品不卡| 丝袜美腿高跟呻吟高潮一区| 色成年激情久久综合| 国产精品二区一区二区aⅴ污介绍| 极品少妇xxxx精品少妇偷拍| 91精品国产色综合久久ai换脸 | 不卡免费追剧大全电视剧网站| 日韩三级av在线播放| 天天射综合影视| 日本韩国精品在线| 夜夜揉揉日日人人青青一国产精品| 成人黄色在线网站| 日本一二三不卡| 成人18视频日本| 国产色产综合产在线视频| 国产在线播放一区二区三区| ww亚洲ww在线观看国产| 国产在线播放一区| 日本一区免费视频| 99re在线视频这里只有精品| 中文字幕一区二区三区精华液| 成人午夜碰碰视频| 中文字幕一区二区三区视频 | 国产成人av一区二区三区在线| 精品国产区一区| 国产伦精品一区二区三区视频青涩| 久久综合狠狠综合久久激情 | 国产精品久久久久久妇女6080| 丁香婷婷综合激情五月色| 中文字幕成人在线观看| 91在线观看成人| 亚洲不卡av一区二区三区| 欧美狂野另类xxxxoooo| 奇米精品一区二区三区在线观看| 精品久久久久一区二区国产| 国内精品国产成人国产三级粉色| 久久综合给合久久狠狠狠97色69| 国产伦精品一区二区三区视频青涩| 国产目拍亚洲精品99久久精品| 99久久精品国产导航| 亚洲综合色视频| 欧美一级一级性生活免费录像| 国产又粗又猛又爽又黄91精品| 久久精品欧美日韩| 色哟哟在线观看一区二区三区| 亚洲香蕉伊在人在线观| 欧美成va人片在线观看| 波多野结衣在线一区| 亚洲图片一区二区| 亚洲精品一区二区三区香蕉| 91在线一区二区三区| 天天av天天翘天天综合网| 日韩区在线观看| 99久久精品免费精品国产| 日韩极品在线观看| 国产精品福利一区| 日韩精品一区二区三区在线| 丁香婷婷深情五月亚洲| 五月婷婷激情综合| 中文字幕 久热精品 视频在线| 欧美三片在线视频观看| 国产成人免费9x9x人网站视频| 亚洲精品日产精品乱码不卡| 精品国产伦一区二区三区免费| 99久久精品国产精品久久| 久久9热精品视频| 亚洲成人免费视| 国产精品成人一区二区艾草 | aaa欧美色吧激情视频| 五月婷婷综合在线| 中文字幕欧美激情| 日韩欧美久久久| 欧美性大战久久| 99国产精品久久久久久久久久| 激情五月激情综合网| 一区二区久久久| 中文字幕第一区二区| 精品久久人人做人人爽| 9191国产精品| 欧美影视一区二区三区| 成人av动漫网站| 国产成人精品亚洲午夜麻豆| 日韩高清一区二区| 亚洲国产欧美一区二区三区丁香婷| 国产精品美女久久久久久| 久久久久一区二区三区四区| 日韩一区二区在线免费观看| 欧美日韩一区在线| 欧美三级蜜桃2在线观看| 日本乱人伦aⅴ精品| av中文字幕亚洲| eeuss鲁片一区二区三区在线看| 高清久久久久久| 国产精品香蕉一区二区三区| 国模冰冰炮一区二区| 美女一区二区在线观看| 日本欧美久久久久免费播放网| 一区二区三区中文字幕精品精品| 亚洲欧洲av色图| 亚洲欧美一区二区在线观看| 国产精品国产馆在线真实露脸| 国产精品久久久久一区二区三区| 久久精品人人做| 亚洲欧美自拍偷拍色图| 中文字幕中文乱码欧美一区二区| 欧美经典一区二区| 国产精品久线在线观看| 一区在线观看免费| 亚洲欧美电影一区二区| 一区二区三区在线视频免费 | 欧美美女bb生活片| 欧美日韩aaa| 日韩视频不卡中文| 久久久91精品国产一区二区三区| 久久久久久亚洲综合| 国产欧美一区二区精品秋霞影院 | 国产精品素人一区二区| 国产精品九色蝌蚪自拍| 亚洲综合av网| 蜜臀av性久久久久蜜臀aⅴ四虎 | 国产精品久久久久久亚洲毛片| 国产精品麻豆一区二区| 亚洲一级二级在线| 理论片日本一区| av在线不卡免费看| 欧美精品高清视频| 精品处破学生在线二十三| 中文字幕亚洲在| 天堂一区二区在线免费观看| 国产激情一区二区三区桃花岛亚洲| av在线播放一区二区三区| 欧美精品aⅴ在线视频| 午夜婷婷国产麻豆精品| 久久天天做天天爱综合色| 国产精品三级久久久久三级| 亚洲欧美在线另类| 另类中文字幕网| jlzzjlzz欧美大全| 日韩一区二区在线免费观看| 国产精品乱码人人做人人爱| 亚洲va欧美va天堂v国产综合| 国产一区 二区 三区一级| 91麻豆swag| 久久综合久久综合亚洲| 一区二区三区日韩在线观看| 国产精品亚洲午夜一区二区三区 | 风间由美一区二区三区在线观看 | 99精品热视频| 日韩亚洲欧美成人一区| 中文字幕亚洲一区二区av在线 | 91麻豆免费看| 337p日本欧洲亚洲大胆精品| 伊人性伊人情综合网| 国产精品一区一区| 欧美男生操女生| 亚洲欧洲制服丝袜| 国产精品亚洲人在线观看| 欧美日韩久久一区| 亚洲丝袜美腿综合| 国产suv一区二区三区88区| 日韩一级免费观看| 亚洲va在线va天堂| 91福利国产精品| 中文字幕一区二区三区四区不卡| 极品少妇xxxx偷拍精品少妇| 在线观看91av| 亚洲一区二区三区视频在线播放| 国产91精品在线观看| 精品国产百合女同互慰| 日韩二区三区在线观看| 在线观看成人免费视频| 国产精品国产三级国产aⅴ无密码| 激情综合色综合久久综合| 欧美裸体bbwbbwbbw| 亚洲网友自拍偷拍| 91极品视觉盛宴| 亚洲激情欧美激情| 91美女片黄在线观看91美女| 国产精品久久久久精k8| 国产 日韩 欧美大片| 欧美国产综合色视频| 高清不卡一区二区在线| 国产清纯在线一区二区www| 久久国产精品免费| 欧美哺乳videos| 韩国毛片一区二区三区| 久久女同互慰一区二区三区| 韩国成人福利片在线播放|