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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? net_conn.c

?? ucos的tcpip協(xié)議占
?? 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中文字幕| 激情小说亚洲一区| 午夜精品久久久久久久久久久| 欧美一级高清大全免费观看| 尤物视频一区二区| 成人免费观看视频| 成人免费一区二区三区视频| 免费日本视频一区| 国产乱人伦偷精品视频不卡 | 亚洲国产精品人人做人人爽| 亚洲人成7777| 美女国产一区二区| 91亚洲精品久久久蜜桃网站| 91久久精品一区二区三| 欧美精品亚洲二区| 国产精品久久久久久亚洲伦| 日本va欧美va精品| 午夜精品久久久久久久99樱桃| 亚洲精品国产第一综合99久久| 一区二区三区视频在线观看| 国产成人亚洲综合色影视 | 8x福利精品第一导航| fc2成人免费人成在线观看播放| 艳妇臀荡乳欲伦亚洲一区| 久久综合综合久久综合| 成人毛片老司机大片| 午夜天堂影视香蕉久久| 欧美日韩国产高清一区二区三区| 91福利社在线观看| 视频一区视频二区中文| 欧美videofree性高清杂交| 国产乱码字幕精品高清av| 中文字幕在线不卡国产视频| 欧美日韩一本到| 日韩一区精品字幕| 国产欧美精品在线观看| 欧美日韩亚洲综合在线| 国产一区二区三区在线看麻豆| 亚洲视频每日更新| 欧美猛男gaygay网站| 久久精品99国产精品日本| 舔着乳尖日韩一区| 亚洲成人精品一区二区| 国产精品伦理在线| 5566中文字幕一区二区电影| 91蜜桃在线观看| 美腿丝袜亚洲色图| 一区二区三区在线高清| 国产精品福利在线播放| 91精品国产综合久久久蜜臀粉嫩| 国产精品视频yy9299一区| 一级女性全黄久久生活片免费| 欧美视频一区二区三区在线观看| 免费看欧美美女黄的网站| 久久久精品影视| 久久综合中文字幕| 欧美成人精品1314www| 制服视频三区第一页精品| 成人激情开心网| 日韩电影在线免费观看| 色综合久久综合网97色综合| 综合分类小说区另类春色亚洲小说欧美| 欧美日韩高清不卡| 久久国产剧场电影| 欧洲一区二区三区免费视频| 一区av在线播放| 亚洲国产精品国自产拍av| 欧美一区二区免费视频| 欧美成人官网二区| 天堂va蜜桃一区二区三区 | 午夜精品福利一区二区蜜股av| 久久99国产精品久久| 久久久电影一区二区三区| 在线看国产日韩| 国产999精品久久久久久绿帽| 久久精品国产免费| 青青草国产成人99久久| 国产中文字幕一区| 国产精品一区二区在线看| 国产一区二区三区综合| 在线免费观看日韩欧美| 在线综合亚洲欧美在线视频| 欧美高清性hdvideosex| 91精品国产福利| 亚洲欧美日韩人成在线播放| 中文字幕一区二区三区不卡 | 日本美女一区二区三区| 韩国三级电影一区二区| 久草这里只有精品视频| 国产 欧美在线| 欧美色倩网站大全免费| 26uuu国产电影一区二区| 精品sm在线观看| 夜夜操天天操亚洲| 成人激情文学综合网| 激情六月婷婷久久| 日韩电影在线一区二区| 国产精品欧美久久久久无广告 | 国产精品久久久久久久久免费桃花 | 91免费看视频| 99视频有精品| 久久久91精品国产一区二区精品| 一区二区三区加勒比av| 国产成人免费在线观看| 国产精品亲子伦对白| 成人av在线影院| 日本免费在线视频不卡一不卡二| 日本一区免费视频| 国产欧美日韩亚州综合 | 欧美韩日一区二区三区| 伊人夜夜躁av伊人久久| 国产美女av一区二区三区| 6080日韩午夜伦伦午夜伦| 亚洲卡通动漫在线| 成人综合在线网站| 蜜臀av性久久久久蜜臀aⅴ四虎| 开心九九激情九九欧美日韩精美视频电影| 国产美女视频91| 欧美不卡123| 亚洲午夜羞羞片| 97精品超碰一区二区三区| 国产日产欧美一区| 久久99精品久久久久久国产越南 | 久久99久久久久| 欧美三级三级三级爽爽爽| 亚洲日本在线a| 99视频精品在线| 国产精品人成在线观看免费 | 欧美特级限制片免费在线观看| 国产精品一区二区视频| 日韩欧美在线123| 欧美性欧美巨大黑白大战| 日韩一卡二卡三卡| 国产日韩欧美a| 国产精品丝袜91| 91亚洲国产成人精品一区二区三 | 另类小说视频一区二区| 欧美吻胸吃奶大尺度电影| 亚洲精品免费视频| 91视频免费看| 亚洲综合一区二区精品导航| 色94色欧美sute亚洲线路一ni | 久久美女艺术照精彩视频福利播放| 五月天一区二区三区| 欧美剧情片在线观看| 日本午夜一区二区| 日韩女优制服丝袜电影| 黑人巨大精品欧美一区| 久久久国产精华| av毛片久久久久**hd| 一区二区三区在线视频观看58| 日本韩国欧美一区二区三区| 婷婷国产v国产偷v亚洲高清| 欧美一区二区三区视频免费播放 | 国产精品久久久久精k8| 91麻豆免费视频| 亚洲一区二区三区激情| 欧美一级黄色大片| 高清在线成人网| 亚洲综合色丁香婷婷六月图片| 欧美区视频在线观看| 麻豆精品久久久| 日本一区二区三区四区 | 欧洲精品一区二区| 热久久一区二区| 国产校园另类小说区| 色婷婷精品久久二区二区蜜臂av | 国产精品主播直播| 最新国产成人在线观看| 91精品国产综合久久香蕉的特点 | 日韩午夜精品视频| 成人在线综合网| 亚洲成在人线免费| 国产欧美精品一区二区色综合朱莉 | 亚洲成人免费视频| 久久在线观看免费| 欧洲色大大久久| 韩国女主播成人在线观看| 中文字幕在线观看一区| 91精品国产综合久久精品图片| 国产suv一区二区三区88区| 亚洲风情在线资源站| 国产区在线观看成人精品| 欧美日韩一区视频| 国产成人精品aa毛片| 日韩激情视频在线观看| 国产精品网站一区| 日韩视频在线观看一区二区| 91蜜桃传媒精品久久久一区二区| 精品一区二区三区在线播放 | 免费高清在线视频一区·| 亚洲欧洲三级电影| 精品日韩欧美一区二区| 欧美少妇一区二区| 成人免费va视频| 亚洲视频小说图片| 国产99久久久国产精品免费看| 综合在线观看色|