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

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

?? dhcpccommonlib.c

?? vxwork源代碼
?? C
?? 第 1 頁 / 共 5 頁
字號:
                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag12 = pDest;            break;        case _DHCP_MERIT_DUMP_TAG: 		/* Option Tag 14 */            pDest = dhcpcOptCreate (option, pOptList->pTag14, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag14 = pDest;            break;        case _DHCP_DNS_DOMAIN_TAG: 		/* Option Tag 15 */            pDest = dhcpcOptCreate (option, pOptList->pTag15, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag15 = pDest;            break;        case _DHCP_ROOT_PATH_TAG: 		/* Option Tag 17 */            pDest = dhcpcOptCreate (option, pOptList->pTag17, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag17 = pDest;            break;        case _DHCP_EXTENSIONS_PATH_TAG: 	/* Option Tag 18 */            pDest = dhcpcOptCreate (option, pOptList->pTag18, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag18 = pDest;            break;        case _DHCP_NIS_DOMAIN_TAG: 		/* Option Tag 40 */            pDest = dhcpcOptCreate (option, pOptList->pTag40, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag40 = pDest;            break;        case _DHCP_NB_SCOPE_TAG: 		/* Option Tag 47 */            pDest = dhcpcOptCreate (option, pOptList->pTag47, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag47 = pDest;            break;        case _DHCP_ERRMSG_TAG: 			/* Option Tag 56 */            pDest = dhcpcOptCreate (option, pOptList->pTag56, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag56 = pDest;            break;        case _DHCP_CLASS_ID_TAG: 		/* Option Tag 60 */            pDest = dhcpcOptCreate (option, pOptList->pTag60, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag60 = pDest;            break;        case _DHCP_CLIENT_ID_TAG: 		/* Option Tag 61 */            /*             * This option is also stored separately since it is included             * independently in DECLINE and RELEASE messages.             */            if (pReqSpec->clid == NULL)                {                pReqSpec->clid = malloc (sizeof (struct client_id));                if (pReqSpec->clid == NULL)                    {                    errno = S_dhcpcLib_OPTION_NOT_STORED;                    return (ERROR);                    }                bzero ( (char *)pReqSpec->clid, sizeof (struct client_id));                }            if (pReqSpec->clid->id != NULL)                free (pReqSpec->clid->id);            pReqSpec->clid->id = malloc (length * sizeof (char));            if (pReqSpec->clid->id == NULL)                {                free (pReqSpec->clid);                pReqSpec->clid = NULL;                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            bcopy (pData, pReqSpec->clid->id, length);            pReqSpec->clid->len = length;            pDest = dhcpcOptCreate (option, pOptList->pTag61, pData, length);            if (pDest == NULL)                {                free (pReqSpec->clid->id);                free (pReqSpec->clid);                pReqSpec->clid = NULL;                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag61 = pDest;            break;        case _DHCP_NISP_DOMAIN_TAG: 		/* Option Tag 64 */            pDest = dhcpcOptCreate (option, pOptList->pTag64, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag64 = pDest;            break;        case _DHCP_TFTP_SERVERNAME_TAG: 	/* Option Tag 66 */            pDest = dhcpcOptCreate (option, pOptList->pTag66, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag66 = pDest;            break;        case _DHCP_BOOTFILE_TAG: 		/* Option Tag 67 */            pDest = dhcpcOptCreate (option, pOptList->pTag67, pData, length);            if (pDest == NULL)                {                errno = S_dhcpcLib_OPTION_NOT_STORED;                return (ERROR);                }            else                pOptList->pTag67 = pDest;            break;        }    pReqSpec->pOptList->optlen += length + 2;    SETBIT (pOptList->optmask, option);    return (OK);    }/********************************************************************************* dhcpcOptionMerge - combine options into a single body** The dhcpcOptionAdd() routine uses this routine to extend an existing option* body, if any, with new data. This merge operation is required when the same* option is inserted more than once for a given tag. If no option currently* exists, this routine just creates the new option subfield. The <pOrig>* parameter contains the current option subfield, or NULL if none exists yet.* The <pData> parameter contains <length> bytes of additional option data.** RETURNS: Pointer to new option subfield, or NULL if error occurs.** NOMANUAL*/UCHAR * dhcpcOptionMerge    (    UCHAR	option, 	/* RFC 2132 tag of desired option */    UCHAR * 	pOrig, 		/* current option subfield, or NULL if none */    UCHAR * 	pData, 		/* additional/first option body */    int 	length 		/* amount of new data */    )    {    int optlen; 	/* Size of current subfield */    int newlen; 	/* Size of new subfield */    UCHAR * pDest;    if (pOrig != NULL)        optlen = * (pOrig + 1);    else        optlen = 0;    optlen += 2; 	/* Adjust for tag and length values. */    newlen = optlen + length;    if (newlen > 255) 	/* Merged option exceeds maximum length. */        return (NULL);    pDest = malloc (newlen);    if (pDest != NULL)        {        if (pOrig != NULL)            {            bcopy (pOrig, pDest, optlen);            free (pOrig);            }        else            *pDest = option;        * (pDest + 1) = newlen;    /* Update length field to new value. */        bcopy (pData, pDest + optlen, length);        }    return (pDest);    }/********************************************************************************* dhcpcOptCreate - generate a new subfield for variable-length options** The dhcpcOptionAdd() routine uses this routine to create or replace an* option subfield. The <pOrig> parameter contains the current option subfield,* or NULL if none exists yet. The <pData> parameter contains <length> bytes of* option data for the new (or initial) subfield.** RETURNS: Pointer to new option subfield, or NULL if error occurs.** NOMANUAL*/UCHAR * dhcpcOptCreate    (    UCHAR	option, 	/* RFC 2132 tag of desired option */    UCHAR * 	pOrig, 		/* current option subfield, or NULL if none */    UCHAR * 	pData, 		/* additional/first option body */    int 	length 		/* amount of new data */    )    {    UCHAR * pDest;    pDest = malloc (length + 2);    /* Adjusts for tag and length */    if (pDest != NULL)        {        *pDest = option;        * (pDest + 1) = length;        bcopy (pData, pDest + 2, length);        if (pOrig != NULL)            free (pOrig);        }    return (pDest);    }/********************************************************************************* dhcpcOptFieldCreate - fill in the options field for outgoing messages** The boot-time and run-time DHCP clients use this routine to fill the* options field for all outgoing messages from the available entries in* the <pOptList> structure. Any memory used for variable-length subfields* within that structure is released. The <pOptions> parameter indicates the* destination for the options to be included in all outgoing messages. This* routine ignores the contents for the "requested IP address" option, if* present, since that option cannot always be included in the initial message.** RETURNS: N/A** NOMANUAL*/void dhcpcOptFieldCreate    (    struct dhcpcOpts * 	pOptList, 	/* Available options for message */    UCHAR *	 	pOptions 	/* Resulting message field */    )    {    int 	loop;    int 	optlen = 0;    UCHAR * 	pData = NULL;    UCHAR * 	pDest;    BOOL 	copyFlag;    pDest = pOptions;    for (loop = 0; loop < MAXTAGNUM; loop++)        {        if (ISSET (pOptList->optmask, loop))            {            copyFlag = FALSE;            /*              * For fixed size options, copy option body after inserting             * option tag and length.             */            switch (loop)                {                /* 1 byte values */                case _DHCP_IP_FORWARD_TAG: 		/* Option Tag 19 */                    optlen = 1;                    pData = &pOptList->tag19;                    copyFlag = TRUE;                     break;                    case _DHCP_NONLOCAL_SRCROUTE_TAG: 	/* Option Tag 20 */                    optlen = 1;                    pData = &pOptList->tag20;                    copyFlag = TRUE;                     break;                case _DHCP_DEFAULT_IP_TTL_TAG: 		/* Option Tag 23 */                    optlen = 1;                    pData = &pOptList->tag23;                    copyFlag = TRUE;                     break;                case _DHCP_ALL_SUBNET_LOCAL_TAG: 	/* Option Tag 27 */                    optlen = 1;                    pData = &pOptList->tag27;                    copyFlag = TRUE;                     break;                case _DHCP_MASK_DISCOVER_TAG: 		/* Option Tag 29 */                    optlen = 1;                    pData = &pOptList->tag29;                    copyFlag = TRUE;                     break;                case _DHCP_MASK_SUPPLIER_TAG: 		/* Option Tag 30 */                    optlen = 1;                    pData = &pOptList->tag30;                    copyFlag = TRUE;                     break;                case _DHCP_ROUTER_DISCOVER_TAG: 	/* Option Tag 31 */                    optlen = 1;                    pData = &pOptList->tag31;                    copyFlag = TRUE;                     break;                case _DHCP_TRAILER_TAG: 		/* Option Tag 34 */                    optlen = 1;                    pData = &pOptList->tag34;                    copyFlag = TRUE;                     break;                case _DHCP_ETHER_ENCAP_TAG: 		/* Option Tag 36 */                    optlen = 1;                    pData = &pOptList->tag36;                    copyFlag = TRUE;                     break;                case _DHCP_DEFAULT_TCP_TTL_TAG: 	/* Option Tag 37 */                    optlen = 1;                    pData = &pOptList->tag37;                    copyFlag = TRUE;                     break;                case _DHCP_KEEPALIVE_GARBAGE_TAG: 	/* Option Tag 39 */                    optlen = 1;                    pData = &pOptList->tag39;                    copyFlag = TRUE;                     break;                case _DHCP_NB_NODETYPE_TAG: 		/* Option Tag 46 */                    optlen = 1;                    pData = &pOptList->tag46;                    copyFlag = TRUE;       

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品888| 久久精品理论片| 一区二区三区日本| 免费日本视频一区| 99re66热这里只有精品3直播 | 午夜欧美大尺度福利影院在线看| 免费看精品久久片| 欧美日韩国产综合一区二区 | 久久免费的精品国产v∧| 亚洲欧美一区二区三区极速播放 | 国产精品美女久久久久久2018| 视频一区视频二区中文字幕| 播五月开心婷婷综合| 欧美成人艳星乳罩| 日韩精品成人一区二区在线| 91麻豆国产精品久久| 国产喷白浆一区二区三区| 日产国产欧美视频一区精品| 91女厕偷拍女厕偷拍高清| 国产偷v国产偷v亚洲高清| 强制捆绑调教一区二区| 在线这里只有精品| 亚洲综合一区在线| 一本久久综合亚洲鲁鲁五月天 | 久久久久久久久久看片| 久国产精品韩国三级视频| 欧美精品123区| 亚洲电影中文字幕在线观看| 91美女精品福利| 一区精品在线播放| 91在线一区二区三区| 一色桃子久久精品亚洲| 一本一道久久a久久精品| 国产精品国产三级国产aⅴ中文 | 成人免费黄色大片| 国产精品久久网站| 99久久婷婷国产综合精品| 国产精品久久福利| 91在线丨porny丨国产| 日韩美女视频19| 色综合久久综合网欧美综合网| 亚洲日本va在线观看| 91免费观看在线| 亚洲一区二区美女| 欧美福利一区二区| 狠狠色狠狠色综合日日91app| 精品久久国产老人久久综合| 国产在线观看免费一区| 国产日韩欧美一区二区三区乱码| 国产91高潮流白浆在线麻豆 | 91丨porny丨户外露出| 亚洲欧美国产高清| 欧美日韩国产首页| 精品一区二区三区在线播放 | 国产精品嫩草影院av蜜臀| kk眼镜猥琐国模调教系列一区二区| 国产欧美日韩久久| 一本到高清视频免费精品| 亚洲成a人片在线不卡一二三区| 制服视频三区第一页精品| 国产一区二三区| 亚洲欧洲日韩av| 欧美日韩一区二区三区视频| 日本精品视频一区二区| 国产一区二区三区四区五区入口| 欧美一区二区视频网站| 精品一区二区在线视频| 亚洲欧美中日韩| 91精品国产乱| 成人污污视频在线观看| 亚洲成人动漫精品| 国产人伦精品一区二区| 欧美日韩成人综合天天影院 | 色婷婷av一区二区三区大白胸| 亚洲电影一区二区| 久久精品一区二区三区不卡牛牛| 欧美视频一区二区三区在线观看| 久久99精品国产91久久来源| 亚洲码国产岛国毛片在线| 日韩精品一区二区三区在线| 91黄色免费观看| 国产精品影视在线观看| 亚洲成人一区二区| 国产精品毛片高清在线完整版| 在线成人av影院| 一道本成人在线| 高清不卡一二三区| 久久91精品国产91久久小草| 亚洲愉拍自拍另类高清精品| 国产精品天天摸av网| 欧美大片一区二区| 欧美色图片你懂的| 一道本成人在线| 成人av中文字幕| 国产剧情一区在线| 秋霞午夜鲁丝一区二区老狼| 亚洲永久免费av| 亚洲三级理论片| 国产精品久久久久aaaa| 国产欧美一二三区| 精品人在线二区三区| 欧美日韩二区三区| 欧美日本韩国一区| 色94色欧美sute亚洲线路一ni| www.亚洲精品| 懂色中文一区二区在线播放| 韩国一区二区视频| 久久99国产精品久久| 婷婷国产v国产偷v亚洲高清| 亚洲无线码一区二区三区| 亚洲激情图片一区| 一区二区三区丝袜| 一区二区免费在线播放| 亚洲精选免费视频| 亚洲在线一区二区三区| 亚洲一区二区av电影| 色婷婷精品久久二区二区蜜臀av| 欧美韩日一区二区三区四区| 欧美日韩在线三级| 欧美日韩电影一区| 91精品久久久久久久久99蜜臂| 欧美日韩中文另类| 欧美日本韩国一区| 久久综合久久综合久久综合| 久久新电视剧免费观看| 国产欧美日韩视频一区二区| 亚洲欧洲在线观看av| 亚洲一区二区三区视频在线播放| 三级久久三级久久久| 精品一区二区三区免费播放| 国产精品123| 91蝌蚪porny| 精品视频在线看| 日韩欧美的一区二区| 久久精子c满五个校花| 国产精品久久久久aaaa樱花 | 国产丝袜美腿一区二区三区| 国产精品视频免费| 亚洲最新视频在线播放| 三级欧美韩日大片在线看| 国产一区二区久久| 91麻豆国产在线观看| 欧美一区二区三区免费大片 | 亚洲成av人片一区二区| 男男gaygay亚洲| 国产v日产∨综合v精品视频| a美女胸又www黄视频久久| 国产精品免费看片| 日韩电影免费在线观看网站| 国产成a人无v码亚洲福利| 欧美在线视频日韩| 精品国产sm最大网站免费看 | 国产精品视频在线看| 亚洲高清三级视频| 国产精品一区二区在线看| 在线看国产日韩| 国产午夜精品久久久久久久 | 国产精品一区二区在线观看网站| 91视频你懂的| 精品少妇一区二区三区在线视频| 国产精品护士白丝一区av| 免费av网站大全久久| 91免费看片在线观看| 精品999久久久| 亚洲成人动漫av| 91视频在线观看| 国产亚洲欧洲一区高清在线观看| 亚洲一二三区不卡| 成人毛片视频在线观看| 日韩精品一区二区三区在线观看| 一区二区在线观看视频| 粉嫩aⅴ一区二区三区四区五区| 91麻豆精品国产自产在线观看一区| 亚洲国产精华液网站w | 婷婷中文字幕综合| kk眼镜猥琐国模调教系列一区二区| 欧美videos大乳护士334| 亚洲制服丝袜av| 色88888久久久久久影院野外| 久久久久久亚洲综合影院红桃| 视频一区二区三区在线| 欧美日韩一区高清| 亚洲影院在线观看| 99精品偷自拍| 国产精品二三区| 成人福利视频在线| 国产色综合一区| 国产一区二区精品久久| 欧美成人aa大片| 三级久久三级久久久| 在线播放亚洲一区| 午夜精品一区二区三区免费视频| 97久久人人超碰| 亚洲欧美色图小说| 91黄视频在线| 亚洲一区在线观看视频| 91蝌蚪porny| 一区二区三区日韩欧美精品| 色丁香久综合在线久综合在线观看| 国产精品久久久一本精品|