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

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

?? net_conn.c

?? ucos的tcpip協議占
?? 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.
*
*               uC/TCP-IP is provided in source form for FREE evaluation, for educational
*               use or peaceful research.  If you plan on using uC/TCP-IP in a commercial
*               product you need to contact Micrium to properly license its use in your
*               product.  We provide ALL the source code for your convenience and to help
*               you experience uC/TCP-IP.  The fact that the source code is provided does
*               NOT mean that you can use it without paying a licensing fee.
*
*               Knowledge of the source code may NOT be used to develop a similar product.
*
*               Please help us continue to provide the Embedded community with the finest
*               software available.  Your honesty is greatly appreciated.
*********************************************************************************************************
*/

/*
*********************************************************************************************************
*
*                                    NETWORK CONNECTION MANAGEMENT
*
* Filename      : net_conn.c
* Version       : V1.87
* Programmer(s) : ITJ
*********************************************************************************************************
* Note(s)       : (1) Supports network connections for local & remote addresses of the following :
*
*                     (a) Families :
*                         (1) IPv4 Connections
*                             (A) BSD 4.x Sockets
*
*                     (b) Connection types :
*                         (1) Datagram
*                         (2) Stream
*********************************************************************************************************
*/

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

#define    NET_CONN_MODULE
#include  <net.h>


/*
*********************************************************************************************************
*                                               MODULE
*
* Note(s) : (1) See 'net_conn.h  MODULE'.
*********************************************************************************************************
*/

#ifdef  NET_CONN_MODULE_PRESENT


/*$PAGE*/
/*
*********************************************************************************************************
*                                            LOCAL DEFINES
*********************************************************************************************************
*/


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


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

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


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


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

static  void       NetConn_Close                 (NET_CONN             *pconn);

static  void       NetConn_CloseApp              (NET_CONN             *pconn);

static  void       NetConn_CloseTransport        (NET_CONN             *pconn);


static  void       NetConn_CloseAllConnListConns (NET_CONN            **pconn_list);



static  void       NetConn_FreeHandler           (NET_CONN             *pconn);


static  void       NetConn_Clr                   (NET_CONN             *pconn);

#if (NET_ERR_CFG_ARG_CHK_DBG_EN == DEF_ENABLED)
static  void       NetConn_Discard               (NET_CONN             *pconn);
#endif



static  NET_CONN  *NetConn_ListSrch              (NET_CONN            **pconn_list,
                                                  NET_CONN_LIST_TYPE    conn_list_type,
                                                  CPU_BOOLEAN           sec_srch_addr_reqd,
                                                  CPU_INT08U           *paddr_local,
                                                  CPU_INT08U           *paddr_remote);


static  void       NetConn_ChainInsert           (NET_CONN            **pconn_list,
                                                  NET_CONN             *pconn_chain);

static  void       NetConn_ChainUnlink           (NET_CONN            **pconn_list,
                                                  NET_CONN             *pconn_chain);


static  void       NetConn_Add                   (NET_CONN            **pconn_list,
                                                  NET_CONN             *pconn_chain,
                                                  NET_CONN             *pconn,
                                                  NET_CONN_LIST_TYPE    conn_list_type);

static  void       NetConn_Unlink                (NET_CONN             *pconn);


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


/*$PAGE*/
/*
*********************************************************************************************************
*                                           NetConn_Init()
*
* Description : (1) Initialize Network Connection Management Module :
*
*                   (a) Initialize network connection pool
*                   (b) Initialize network connection table
*                   (c) Initialize network connection lists
*                   (d) Initialize network connection wildcard address(s)
*                   (e) Initialize network connection statistics & error counters
*
*
* Argument(s) : none.
*
* Return(s)   : none.
*
* Caller(s)   : Net_Init().
*
*               This function is an INTERNAL network protocol suite function & MUST NOT be called by 
*               application function(s).
*
* Note(s)     : (2) Network connection pool MUST be initialized PRIOR to initializing the pool with 
*                   pointers to network connections.
*
*               (3) Network connection  addresses maintained in network-order.  Therefore, network 
*                   connection wildcard address(es) MUST be configured in network-order.
*
*               (4) Ideally, network connection address configuration comparison(s) would be calculated 
*                   at compile-time.  However, some compilers do NOT allow pre-processor directives to 
*                   include run-time macro's -- e.g. 'sizeof()'.
*********************************************************************************************************
*/
/*$PAGE*/
void  NetConn_Init (void)
{
    NET_CONN            *pconn;
    NET_CONN           **pconn_list;
    NET_CONN_QTY         i;
    NET_CONN_LIST_QTY    j;
    CPU_INT16U           k;
    CPU_INT16U           ix;
    CPU_INT16U           val_len;
    CPU_INT08U           val;
    NET_ERR              stat_err;


                                                                /* ------------- INIT NET CONN POOL/STATS ------------- */
    NetConn_PoolPtr = (NET_CONN *)0;                            /* See Note #2.                                         */

    NetStat_PoolInit((NET_STAT_POOL   *)&NetConn_PoolStat,
                     (NET_STAT_POOL_QTY) NET_CONN_CFG_NBR_CONN,
                     (NET_ERR         *)&stat_err);


                                                                /* ---------------- INIT NET CONN TBL ----------------- */
    pconn = &NetConn_Tbl[0];
    for (i = 0; i < NET_CONN_CFG_NBR_CONN; i++) {
        pconn->Type  =  NET_CONN_TYPE_CONN;                     /* Init each net conn type/id--NEVER modify.            */
        pconn->ID    = (NET_CONN_ID)i;

        pconn->Flags =  NET_CONN_FLAG_NONE;                     /* Init each net conn as NOT used.                      */

#if (NET_DBG_CFG_MEM_CLR_EN == DEF_ENABLED)
        NetConn_Clr(pconn);
#endif

        pconn->NextConnPtr = (void     *)NetConn_PoolPtr;       /* Free each net conn to net conn pool (see Note #2).   */
        NetConn_PoolPtr    = (NET_CONN *)pconn;

        pconn++;
    }


                                                                /* --------------- INIT NET CONN LISTS ---------------- */
                                                                /* Init net conn lists.                                 */
    pconn_list = &NetConn_ServerConnListHead[0];
    for (j = 0; j < NET_CONN_CFG_PROTOCOL_MAX; j++) {
       *pconn_list = (NET_CONN *)0;
        pconn_list++;
    }

    pconn_list = &NetConn_ClientConnListHead[0];
    for (j = 0; j < NET_CONN_CFG_PROTOCOL_MAX; j++) {
       *pconn_list = (NET_CONN *)0;
        pconn_list++;
    }

                                                                /* Init net conn list ptrs.                             */
    NetConn_ConnListChainPtr     = (NET_CONN *)0;
    NetConn_ConnListConnPtr      = (NET_CONN *)0;
    NetConn_ConnListNextChainPtr = (NET_CONN *)0;
    NetConn_ConnListNextConnPtr  = (NET_CONN *)0;



/*$PAGE*/
                                                                /* ----------- INIT NET CONN WILDCARD ADDRS ----------- */
                                                                /* See Note #3.                                         */
    Mem_Clr((void     *)&NetConn_AddrWildCard[0],
            (CPU_SIZE_T) NET_CONN_CFG_ADDR_LEN);

#if (NET_CONN_CFG_FAMILY == NET_CONN_FAMILY_IP_V4_SOCK)
    if (NET_CONN_ADDR_IP_LEN_ADDR <= NET_CONN_CFG_ADDR_LEN) {   /* See Note #4.                                         */
        NetConn_AddrWildCardAvail  = DEF_YES;

        val_len = NET_CONN_ADDR_IP_LEN_ADDR;
        for (k = 0; k < val_len; k++) {
            val                      = (NET_CONN_ADDR_IP_WILD_CARD >> (k * DEF_OCTET_NBR_BITS)) & DEF_OCTET_MASK;
            ix                       =  val_len - k - 1;
            NetConn_AddrWildCard[ix] =  val;
        }

    } else {
        NetConn_AddrWildCardAvail = DEF_NO;
    }


#else
    NetConn_AddrWildCardAvail = DEF_NO;
   (void)&k;                                                    /* Prevent compiler warnings.                           */
   (void)&ix;
   (void)&val;
   (void)&val_len;
#endif



                                                                /* ---------- INIT NET CONN STAT & ERR CTRS ----------- */
#if (NET_CTR_CFG_ERR_EN                  == DEF_ENABLED)
    NetConn_ErrNoneAvailCtr              =  0;
    NetConn_ErrNotUsedCtr                =  0;

    NetConn_ErrCloseCtr                  =  0;

    NetConn_ErrInvalidConnCtr            =  0;
    NetConn_ErrInvalidConnAddrLenCtr     =  0;
    NetConn_ErrInvalidConnAddrInUseCtr   =  0;

    NetConn_ErrInvalidFamilyCtr          =  0;

    NetConn_ErrInvalidListTypeCtr        =  0;
    NetConn_ErrInvalidListIxCtr          =  0;

#if (NET_ERR_CFG_ARG_CHK_DBG_EN          == DEF_ENABLED)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
在线视频亚洲一区| 蜜桃av一区二区三区电影| 在线不卡中文字幕| 不卡av电影在线播放| 蜜桃免费网站一区二区三区| 亚洲日本乱码在线观看| 久久精品视频在线看| 欧美三级韩国三级日本一级| 国产91色综合久久免费分享| 蜜臀91精品一区二区三区| 一区二区在线观看av| 国产女主播一区| 精品久久一区二区三区| 欧美巨大另类极品videosbest| 99久久伊人久久99| 国产成人精品免费在线| 男人操女人的视频在线观看欧美 | 中文字幕视频一区二区三区久| 欧美一区二区视频在线观看2020 | 欧美在线视频全部完| 不卡的av网站| 五月婷婷另类国产| 琪琪一区二区三区| 亚洲丝袜美腿综合| 久久嫩草精品久久久精品| 欧美精品第1页| 欧美日韩视频在线一区二区| 欧洲精品一区二区三区在线观看| 99re8在线精品视频免费播放| 韩国成人福利片在线播放| 青草国产精品久久久久久| 日本aⅴ亚洲精品中文乱码| 亚洲高清视频在线| 丝袜美腿亚洲一区| 日韩福利视频导航| 日日摸夜夜添夜夜添国产精品| 亚洲mv大片欧洲mv大片精品| 亚洲h在线观看| 五月天久久比比资源色| 日韩中文字幕一区二区三区| 亚洲成人精品一区二区| 日韩二区三区在线观看| 男男gaygay亚洲| 免费成人你懂的| 极品美女销魂一区二区三区| 国产乱码精品一区二区三| 国产老妇另类xxxxx| 国产精品99久| 国产不卡在线视频| 成人动漫一区二区在线| 色综合一个色综合亚洲| 欧美私人免费视频| 91精品国产日韩91久久久久久| 欧美精品久久久久久久久老牛影院| 欧美怡红院视频| 欧美精品国产精品| 久久久久9999亚洲精品| 国产精品嫩草影院com| 中文字幕亚洲欧美在线不卡| 夜夜精品视频一区二区| 日欧美一区二区| 国产在线精品一区二区三区不卡 | 91国产精品成人| 欧美欧美欧美欧美首页| 欧美r级电影在线观看| 国产日韩欧美一区二区三区综合| 中文字幕制服丝袜一区二区三区| 亚洲影院理伦片| 蜜臀va亚洲va欧美va天堂| 国产精品123区| 91久久久免费一区二区| 在线成人小视频| 国产日产欧美一区二区三区| 一区二区三区鲁丝不卡| 久久国产夜色精品鲁鲁99| 成人激情视频网站| 在线播放亚洲一区| 国产精品免费av| 日本欧美在线看| av资源站一区| 日韩精品影音先锋| 一区二区三区在线看| 欧美bbbbb| 色欧美88888久久久久久影院| 日韩欧美的一区| 亚洲色图一区二区| 国产综合一区二区| 欧美中文一区二区三区| 久久精品在线观看| 亚洲www啪成人一区二区麻豆| 国产精品亚洲专一区二区三区| 精品污污网站免费看| 国产日韩欧美激情| 美腿丝袜亚洲一区| 日本伦理一区二区| 国产女主播视频一区二区| 日本在线不卡一区| 色94色欧美sute亚洲线路二| 久久综合久久综合久久综合| 亚洲成人在线观看视频| 欧美军同video69gay| 在线看国产一区| 国产成人精品综合在线观看| 久久免费看少妇高潮| 色婷婷亚洲婷婷| 国产日产欧美一区| 久久亚洲一级片| 成人黄色电影在线| 国产一区二区中文字幕| 国产精品污网站| 精品久久久久一区二区国产| 蜜乳av一区二区三区| 国产一区二区伦理| 国产亚洲短视频| 亚洲三级在线播放| 国产很黄免费观看久久| 精品欧美一区二区久久| 日一区二区三区| 欧美色网一区二区| 一区二区三区国产精华| 波多野结衣精品在线| 欧美精品一区二区三区高清aⅴ| 日韩国产精品久久| 91麻豆精品国产91久久久久久久久| 亚洲人成网站色在线观看| 成人高清在线视频| 国产精品天美传媒沈樵| 岛国av在线一区| 国产欧美精品一区二区三区四区| 久久爱另类一区二区小说| 欧美一卡2卡三卡4卡5免费| 天天综合网天天综合色| 欧美日韩免费视频| 偷拍与自拍一区| 欧美日本视频在线| 人人精品人人爱| 日韩一区二区免费高清| 精品一区二区三区免费观看| 精品99一区二区| 国产精品亚洲人在线观看| 国产欧美日韩精品在线| 粉嫩av亚洲一区二区图片| 中文成人av在线| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 日本aⅴ亚洲精品中文乱码| 91麻豆精品国产91久久久久久| 日本不卡一二三| 欧美sm极限捆绑bd| 粉嫩欧美一区二区三区高清影视| 中文字幕一区二区三| 色综合久久99| 无吗不卡中文字幕| 337p日本欧洲亚洲大胆色噜噜| 国产精品夜夜爽| 亚洲欧美一区二区久久| 欧美日韩亚洲国产综合| 久久精品国产精品亚洲综合| 久久亚洲一级片| 97se亚洲国产综合自在线观| 亚洲国产精品久久人人爱| 欧美电影免费提供在线观看| 国产精品亚洲а∨天堂免在线| 亚洲免费在线视频一区 二区| 欧美三级韩国三级日本一级| 国产综合成人久久大片91| 中文欧美字幕免费| 欧美日韩二区三区| 国内精品久久久久影院薰衣草| 亚洲视频免费在线| 在线综合+亚洲+欧美中文字幕| 国产盗摄精品一区二区三区在线| 亚洲黄一区二区三区| 欧美成人vr18sexvr| 成人app网站| 蜜臀va亚洲va欧美va天堂 | 亚洲欧洲99久久| 欧美丰满少妇xxxxx高潮对白| 国产精品99久| 午夜精品久久久久久久久久久| 国产亚洲精品7777| 欧美人妖巨大在线| 国产 欧美在线| 首页亚洲欧美制服丝腿| 国产精品久久久久久妇女6080 | 久久99国产精品免费| 国产精品成人午夜| 一区二区三区欧美视频| 精品盗摄一区二区三区| 日本精品视频一区二区| 韩国午夜理伦三级不卡影院| 亚洲自拍偷拍麻豆| 亚洲国产精品二十页| 91精品国产综合久久精品| 99久久精品久久久久久清纯| 美女mm1313爽爽久久久蜜臀| 亚洲精品亚洲人成人网| 日本一区二区成人在线| 精品国产免费视频| 欧美日韩国产色站一区二区三区| 成人国产一区二区三区精品|