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

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

?? hostlib.c

?? vxworks的完整的源代碼
?? C
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
	    KHEAP_FREE(pHostEntry->hostName.name);	    KHEAP_FREE((char *) pHostEntry);	    return (OK);	    }        else 	    /* given name is an alias */	    {	    for (pHostNamePrev = pHostName = &pHostEntry->hostName;		 pHostName != NULL;		 pHostNamePrev = pHostName, pHostName = pHostName->link)		{		pHostNameNext = pHostName->link;		if (strcmp (pHostName->name, name) == 0)	/* found alias */		    {		    pHostNamePrev->link = pHostNameNext;		    semGive (hostListSem);		    KHEAP_FREE(pHostName->name);		    KHEAP_FREE((char *) pHostName);		    return (OK);		    }		}	    }	}    errnoSet (S_hostLib_UNKNOWN_HOST);    semGive (hostListSem);    return (ERROR);    }/********************************************************************************* hostTblSearchByName - look up a host in the host table by its name** This routine returns the Internet address of a host that has* been added to the host table by hostAdd().** RETURNS* The Internet address (as an integer in network byte order), or ERROR if the * host is unknown.** NOMANUAL** INTERNAL* This function is used by the resolver to search the static host table.*/int hostTblSearchByName    (    char *name          /* name of host */    )    {    HOSTNAME  *pHostName;    HOSTENTRY *pHostEntry;    int retAddr = ERROR;    semTake (hostListSem, WAIT_FOREVER);    for (pHostEntry = (HOSTENTRY *)lstFirst (&hostList);	 pHostEntry != NULL;	 pHostEntry = (HOSTENTRY *)lstNext (&pHostEntry->node))	{	/* check official name */	if (strcmp (pHostEntry->hostName.name, name) == 0)	    {	    retAddr = (int)pHostEntry->netAddr.s_addr;	    break;	    }	/* check aliases */	for (pHostName = pHostEntry->hostName.link;	     pHostName != NULL;	     pHostName = pHostName->link)	    {	    if (strcmp (pHostName->name, name) == 0)		{		retAddr = (int)pHostEntry->netAddr.s_addr;		/* force termination of outer loop */		pHostEntry = (HOSTENTRY *)lstLast (&hostList);		break;		}	    }	}    semGive (hostListSem);    return (retAddr);    }/********************************************************************************* hostGetByName - look up a host in the host table by its name** This routine returns the Internet address of a host that has* been added to the host table by hostAdd().  If the DNS resolver library* resolvLib has been configured in the vxWorks image, a query for the host* IP address is sent to the DNS server, if the name was not found in the local* host table.** RETURNS: The Internet address (as an integer), or ERROR if the host is*          unknown.** ERRNO: S_hostLib_INVALID_PARAMETER, S_hostLib_UNKNOWN_HOST*/int hostGetByName    (    char *name          /* name of host */    )    {    int retAddr;    if (name == (char *) NULL)        {        errnoSet (S_hostLib_INVALID_PARAMETER);        return (ERROR);        }    /* Search the host table using the host name as the key */    retAddr = hostTblSearchByName (name);    if ((retAddr == ERROR) && (_presolvHostLibGetByName != NULL))	{	/*	 * If host address was not found in the local table.  Try to get the	 * IP from the DNS server, if and only if the resolver library has	 * been linked with the Vxworks image.	 */	retAddr = (*_presolvHostLibGetByName) (name);	}    if (retAddr == ERROR)	errnoSet (S_hostLib_UNKNOWN_HOST);    return (retAddr);    }/********************************************************************************* hostTblSearchByAddr - look up a host in the host table by its Internet address** This routine finds the host name by its Internet address and copies it to* <name>.  The buffer <name> should be preallocated with (MAXHOSTNAMELEN + 1)* bytes of memory and is NULL-terminated unless insufficient space is* provided.** WARNING* This routine does not look for aliases.  Host names are limited to* MAXHOSTNAMELEN (from hostLib.h) characters.** RETURNS* OK, or ERROR if the host is unknown.** NOMANUAL** INTERNAL* This function is used by the resolver to search the static host table.*/STATUS hostTblSearchByAddr    (    int addr,           /* inet address of host */    char *name          /* buffer to hold name */    )    {    HOSTENTRY *pHostEntry;    struct in_addr netAddr;    STATUS status = ERROR;    int n;    netAddr.s_addr = addr;    semTake (hostListSem, WAIT_FOREVER);    /* search for internet address */    for (pHostEntry = (HOSTENTRY *)lstFirst (&hostList);	 pHostEntry != NULL;	 pHostEntry = (HOSTENTRY *)lstNext (&pHostEntry->node))	{	if (pHostEntry->netAddr.s_addr == netAddr.s_addr)	    {	    n = strlen (pHostEntry->hostName.name);	    strncpy (name, pHostEntry->hostName.name,			min (n + 1 , MAXHOSTNAMELEN +1));	    status = OK;	    break;	    }  	}    semGive (hostListSem);    return (status);    }/********************************************************************************* hostGetByAddr - look up a host in the host table by its Internet address** This routine finds the host name by its Internet address and copies it to* <name>.  The buffer <name> should be preallocated with (MAXHOSTNAMELEN + 1)* bytes of memory and is NULL-terminated unless insufficient space is* provided.  If the DNS resolver library resolvLib has been configured in the* vxWorks image, a query for the host name is sent to the DNS server, if the* name was not found in the local host table.** WARNING* This routine does not look for aliases.  Host names are limited to* MAXHOSTNAMELEN (from hostLib.h) characters.** RETURNS* OK, or ERROR if buffer is invalid or the host is unknown.** SEE ALSO* hostGetByName()*/STATUS hostGetByAddr    (    int addr,           /* inet address of host */    char *name          /* buffer to hold name */    )    {    STATUS status;    if (name == NULL)        {        errnoSet (S_hostLib_INVALID_PARAMETER);        return (ERROR);        }    /* Search the host table using the host address as the key */    status = hostTblSearchByAddr (addr, name);    if ((status != OK) && (_presolvHostLibGetByAddr != NULL))	{	/*	 * If host name was not found in the local table.  Try to get the	 * name from the DNS server, if and only if the resolver library has	 * been linked with the Vxworks image.	 */	status = (*_presolvHostLibGetByAddr) (addr, name);	}    if (status != OK)	errnoSet (S_hostLib_UNKNOWN_HOST);    return (status);    }/********************************************************************************* hostNameFill - fill in host name** RETURNS: OK or ERROR if out of memory*/LOCAL STATUS hostNameFill    (    FAST HOSTNAME *pHostName,    char *newHostName    )    {    FAST char *pName = (char *) KHEAP_ALLOC((unsigned) (strlen (newHostName) + 1));    if (pName == NULL)	return (ERROR);    strcpy (pName, newHostName);    pHostName->name = pName;    pHostName->link = NULL;    return (OK);    }/********************************************************************************* sethostname - set the symbolic name of this machine** This routine sets the target machine's symbolic name, which can be used* for identification.** RETURNS: OK or ERROR.*/int sethostname    (    char *name,                 /* machine name */    int  nameLen                /* length of name */    )    {#ifdef VIRTUAL_STACK    if (name != NULL && nameLen < sizeof (_targetName))	{        strcpy (_targetName, name);#else    if (name != NULL && nameLen < sizeof (targetName))	{        strcpy (targetName, name);#endif	return (0);	}    return (-1);    }/******************************************************************************** gethostname - get the symbolic name of this machine** This routine gets the target machine's symbolic name, which can be used* for identification.** RETURNS: OK or ERROR.*/int gethostname    (    char *name,  /* machine name */    int   nameLen  /* length of name */    )    {#ifdef VIRTUAL_STACK    if (name != NULL && strlen (_targetName) < nameLen)	{        strcpy (name, _targetName);#else    if (name != NULL && strlen (targetName) < nameLen)	{        strcpy (name, targetName);#endif	return (0);	}    return (-1);    }

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
久久99久久99小草精品免视看| 国产福利91精品一区二区三区| 久久综合九色欧美综合狠狠| 91同城在线观看| 精品一区二区三区香蕉蜜桃 | 成人av在线资源网站| 午夜欧美大尺度福利影院在线看| 欧美激情中文不卡| 日韩午夜激情电影| 欧美日韩亚洲综合一区| 成人午夜私人影院| 久久99精品国产91久久来源| 午夜视频在线观看一区二区| 久久精品视频免费| 日韩欧美的一区| 欧美视频一区二区三区四区| jvid福利写真一区二区三区| 激情五月播播久久久精品| 亚洲成人7777| 一区二区三区中文在线观看| 国产精品欧美一区喷水| 久久午夜色播影院免费高清| 日韩一级片在线观看| 欧美日韩亚洲综合在线 | 久久国产精品99久久人人澡| 偷拍与自拍一区| 一区二区三区中文免费| 亚洲日本在线视频观看| 亚洲欧洲av一区二区三区久久| 国产婷婷色一区二区三区| 欧美精品一区视频| 精品国精品国产| 精品久久久久久久一区二区蜜臀| 欧美一区二区私人影院日本| 911精品产国品一二三产区 | 国产精品美女视频| 中国色在线观看另类| 日本一区二区视频在线观看| 国产亚洲欧洲一区高清在线观看| 久久久久久亚洲综合| 国产丝袜在线精品| 国产精品国产精品国产专区不片| 国产精品美女久久久久aⅴ国产馆 国产精品美女久久久久av爽李琼 国产精品美女久久久久高潮 | 日韩精品一区二区三区中文精品 | 亚洲精品国产精品乱码不99| 亚洲人吸女人奶水| 亚洲一区二区三区免费视频| 五月婷婷综合网| 日韩电影在线免费看| 理论电影国产精品| 国产一区二区0| 成人午夜av电影| 色拍拍在线精品视频8848| 欧美视频第二页| 日韩午夜在线观看| 久久久久久久久久久久久夜| 国产人伦精品一区二区| 综合中文字幕亚洲| 午夜精品久久久久久不卡8050| 日韩成人免费看| 国内一区二区视频| 91蜜桃在线免费视频| 欧美裸体一区二区三区| 久久综合九色综合97_久久久 | 偷拍一区二区三区四区| 精品在线观看免费| 波多野结衣精品在线| 色天使色偷偷av一区二区| 9191成人精品久久| 中文字幕va一区二区三区| 一区2区3区在线看| 精品夜夜嗨av一区二区三区| 不卡av在线免费观看| 欧美日韩一区小说| 国产亚洲一区二区三区在线观看| 亚洲人午夜精品天堂一二香蕉| 日韩福利视频网| 99国产精品久久久久久久久久| 欧美日韩亚洲高清一区二区| 久久精品人人做人人综合| 亚洲男帅同性gay1069| 日本中文在线一区| 91香蕉国产在线观看软件| 5月丁香婷婷综合| 国产精品欧美经典| 日本不卡一区二区三区高清视频| 成人综合婷婷国产精品久久免费| 欧美色国产精品| 国产精品青草久久| 久久99国产精品久久99| 欧美在线免费观看视频| 欧美经典一区二区三区| 日韩精品福利网| 91天堂素人约啪| 国产亚洲自拍一区| 青青青伊人色综合久久| 在线影视一区二区三区| 久久免费偷拍视频| 热久久一区二区| 欧美无乱码久久久免费午夜一区 | 日韩1区2区日韩1区2区| 99精品欧美一区二区三区综合在线| 日韩精品最新网址| 亚洲成a人片在线观看中文| www.久久久久久久久| 久久久亚洲午夜电影| 三级欧美韩日大片在线看| 91视频免费播放| 欧美国产欧美综合| 狠狠色狠狠色综合日日91app| 欧美日本在线一区| 亚洲精品美腿丝袜| 99久精品国产| 欧美激情在线一区二区| 国产在线一区二区| 欧美电影免费观看高清完整版| 亚洲成人一区在线| 欧美主播一区二区三区美女| 国产精品成人在线观看| 粉嫩aⅴ一区二区三区四区五区| 欧美精品一区二区三区蜜桃视频| 丝袜诱惑亚洲看片| 欧美精品日韩一本| 亚洲国产精品久久久久秋霞影院| 91视频一区二区| 一区二区三区中文字幕精品精品| 91小视频免费观看| 亚洲精品视频在线观看免费 | 91亚洲永久精品| 中文字幕一区av| 99vv1com这只有精品| 国产精品卡一卡二| 成人影视亚洲图片在线| 国产精品素人一区二区| 成人美女视频在线观看| 国产精品美女久久久久aⅴ国产馆| 成人综合婷婷国产精品久久 | 欧美三级电影在线观看| 亚洲一区二区三区中文字幕 | 成人h动漫精品一区二区| 中文字幕巨乱亚洲| 91麻豆精东视频| 亚洲男人的天堂在线观看| 欧洲精品在线观看| 婷婷国产v国产偷v亚洲高清| 欧美老女人在线| 另类的小说在线视频另类成人小视频在线 | 精品日韩一区二区三区免费视频| 久久99蜜桃精品| 久久精品欧美一区二区三区麻豆| 大尺度一区二区| 亚洲一区二区三区视频在线播放| 欧美日韩的一区二区| 精品一区二区免费在线观看| 国产色产综合色产在线视频| 99精品桃花视频在线观看| 亚洲成人动漫在线观看| 日韩一区二区在线看| 国产91露脸合集magnet| 亚洲精选在线视频| 欧美一区二区三区四区五区| 国产一区二区不卡在线| 亚洲麻豆国产自偷在线| 制服丝袜亚洲播放| 国产99久久久久| 亚洲一本大道在线| 久久夜色精品一区| 91在线播放网址| 乱中年女人伦av一区二区| 国产精品美女久久久久aⅴ国产馆| 欧美亚洲另类激情小说| 国产美女在线观看一区| 亚洲精选视频在线| 欧美成人艳星乳罩| gogo大胆日本视频一区| 日本午夜一区二区| 亚洲欧洲国产专区| 国产一区二区女| 玉米视频成人免费看| 日韩免费观看高清完整版| 91香蕉视频在线| 激情五月婷婷综合| 亚洲午夜免费福利视频| 精品国产免费久久| 欧美午夜电影网| 成人综合婷婷国产精品久久蜜臀 | 国产麻豆精品theporn| 中文字幕在线观看不卡视频| 制服丝袜激情欧洲亚洲| 色婷婷久久综合| 国产成人综合精品三级| 日韩黄色免费电影| 《视频一区视频二区| 欧美精品一区二区三区蜜臀| 欧美性视频一区二区三区| 国产成人在线网站| 久久精品国产亚洲高清剧情介绍| 亚洲欧美另类久久久精品2019| 久久一区二区视频| 欧美一区二区久久|