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

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

?? resolvlibdoc.c

?? vxworks的完整的源代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/* resolvLib/resolvLibDoc.c - DNS resolver library *//* Copyright 1998-2002 Wind River Systems, Inc */#include <copyright_wrs.h>/* modification history --------------------01b,25apr02,vvv  updated doc for resolvGetHostByName (SPR #72988)01a,06oct98,jmp  written from resolvLib.c*//*DESCRIPTIONThis library provides the client-side services for DNS (Domain NameService) queries.  DNS queries come from applications that requiretranslation of IP addresses to host names and back.  If you include this library in VxWorks, it extends the services of the host library.  Theinterface to this library is described in hostLib.  The hostLib interface uses resolver services to get IP and host names. In addition, the resolvercan query multiple DNS servers, if necessary, to add redundancy for queries.  There are two interfaces available for the resolver library.  One is a high-level interface suitable for most applications.  The other is also alow-level interface for more specialized applications, such as mail protocols.USING THIS LIBRARYBy default, a VxWorks build does not include the resolver code.  In addition,VxWorks is delivered with the resolver library disabled.  To include theresolver library in the VxWorks image, edit config/all/configAll.h and include the definition:.CS    #define INCLUDE_DNS_RESOLVER.CETo enable the resolver services, you need to redefine only one DNS server IP address, changing it from a place-holder value to an actual value. Additional DNS server IP addresses can be configured using resolvParamsSet().To do the initial configuration, edit configAll.h, and enter the correct IP address for your domain server in the definition:.CS    #define RESOLVER_DOMAIN_SERVER  "90.0.0.3".CEIf you do not provide a valid IP address, resolver initialization fails.  You also need to configure the domain to which your resolver belongs.  To do this, edit configAll.h and enter the correct domain name for your organization in the definition:.CS    #define RESOLVER_DOMAIN  "wrs.com".CEThe last and most important step is to make sure that you have a route to the configured DNS server.  If your VxWorks image includes a routing protocol, such as RIP or OSPF, the routes are created for you automatically.  Otherwise,you must use routeAdd() or mRouteAdd() to add the routes to the routing table.The resolver library comes with a debug option.  To turn on debugging, edit configAll.h to include the define:.CS    #define INCLUDE_DNS_DEBUG.CEThis include makes VxWorks print a log of the resolver queries to the console.This feature assumes a single task.  Thus, if you are running multiple tasks,your output to the console is a garble of messages from all the tasks.The resolver library uses UDP to send queries to the DNS server and expectsthe DNS server to handle recursion.  You can change the resolver parameters at any time after the library has been initialized with resolvInit().However, it is strongly recommended that you change parameters only shortly after initialization, or when there are no other tasks accessing the resolverlibrary.  Your procedure for changing any of the resolver parameter should startwith a call to resolvParamsGet() to retrieve the active parameters.  Thenyou can change the query order (defaults to query DNS server only), the domain name, or add DNS server IP addresses.  After the parameters arechanged, call resolvParamsSet().  For the values you can use when accessing resolver library services, see the header files resolvLib.h, resolv/resolv.h, and resolv/nameser.h. INCLUDE FILES: resolvLib.h SEE ALSOhostLib*//********************************************************************************* resolvInit - initialize the resolver library ** This function initializes the resolver.  <pNameServer> is a single IP address* for a name server in dotted decimal notation.  <pDefaultDomainName> is the * default domain name to be appended to names without a dot.  The function * pointer <pdnsDebugRtn> is set to the resolver debug function.  Additional* name servers can be configured using the function resolvParamsSet().** RETURNS: OK or ERROR.** SEE ALSO:* resolvGetHostByName(), resolvGetHostByAddr(), resolvDNExpand(),* resolvDNComp(), resolvSend(), resolvParamsSet(), resolvParamsGet(),* resolvQuery()*/STATUS resolvInit    (    char *     pNameServer,	    /* pointer to Name server IP address */    char *     pDefaultDomainName,  /* default domain name */    FUNCPTR    pdnsDebugRtn         /* function ptr to debug routine */    )    {    ...    }/********************************************************************************* resolvGetHostByName - query the DNS server for the IP address of a host** This function returns a `hostent' structure. This structure is defined as* follows: ** .CS*     struct   hostent *     {*     char *   h_name;          /@ official name of host @/ *     char **  h_aliases;       /@ alias list @/*     int      h_addrtype;      /@ address type @/*     int      h_length;        /@ length of address @/ *     char **  h_addr_list;     /@ list of addresses from name server @/*     unsigned int h_ttl;       /@ Time to Live in Seconds for this entry @/*     }* .CE* The `h_aliases' and `h_addr_list' vectors are NULL-terminated. For a locally* resolved entry `h_ttl' is always 60 (an externally resolved entry may also* have a TTL of 60 depending on its age but it is usually much higher).** Specify the host you want to query in <pHostname>.  Use <pBuf> and <bufLen> * to specify the location and size of a buffer to receive the `hostent' * structure and its associated contents.  Host addresses are returned in * network byte order.  Given the information this routine retrieves, the * <pBuf> buffer should be 512 bytes or larger.** RETURNS: A pointer to a `hostent' structure if the host is found, or * NULL if the parameters are invalid, the host is not found, or the * buffer is too small.** ERRNO:*  S_resolvLib_INVALID_PARAMETER*  S_resolvLib_BUFFER_2_SMALL*  S_resolvLib_TRY_AGAIN*  S_resolvLib_HOST_NOT_FOUND*  S_resolvLib_NO_DATA*  S_resolvLib_NO_RECOVERY* * SEE ALSO:* resolvInit(), resolvGetHostByAddr(), resolvDNExpand(),* resolvDNComp(), resolvSend(), resolvParamsSet(), resolvParamsGet(),* resolvMkQuery(), resolvQuery()*/struct hostent *  resolvGetHostByName    (    char *     pHostName,  /* ptr to the name of  the host */    char *     pHostBuf,   /* ptr to the buffer used by hostent structure */    int        bufLen      /* length of the buffer */     )    {    ...    }/********************************************************************************* resolvGetHostByAddr - query the DNS server for the host name of an IP address** This function returns a `hostent' structure, which is defined as follows:** .CS* struct   hostent *     {*     char *   h_name;            /@ official name of host @/*     char **  h_aliases;         /@ alias list @/*     int      h_addrtype;        /@ address type @/*     int      h_length;          /@ length of address @/*     char **  h_addr_list;       /@ list of addresses from name server @/*     unsigned int h_ttl;         /@ Time to Live in Seconds for this entry @/*     }* .CE* The `h_aliases' and `h_addr_list' vectors are NULL-terminated. For a locally* resolved entry `h_ttl' is always 60 (an externally resolved entry may also* have a TTL of 60 depending on its age but it is usually much higher).** The <pinetAddr> parameter passes in the IP address (in network byte order)* for the host whose name you want to discover.  The <pBuf> and <bufLen> * parameters specify the location and size (512 bytes or more) of the buffer * that is to receive the hostent structure.  resolvGetHostByAddr() returns * host addresses are returned in network byte order. ** RETURNS: A pointer to a `hostent' structure if the host is found, or * NULL if the parameters are invalid, host is not found, or the buffer * is too small.* * ERRNO:*  S_resolvLib_INVALID_PARAMETER*  S_resolvLib_BUFFER_2_SMALL*  S_resolvLib_TRY_AGAIN*  S_resolvLib_HOST_NOT_FOUND*  S_resolvLib_NO_DATA*  S_resolvLib_NO_RECOVERY** SEE ALSO:* resolvGetHostByName(), resolvInit(), resolvDNExpand(),* resolvDNComp(), resolvSend(), resolvParamsSet(), resolvParamsGet(),* resolvMkQuery(), resolvQuery()*/struct hostent *     resolvGetHostByAddr     (    const char *       pInetAddr,    char *             pHostBuf,    int                bufLen    )    {    ...    }/********************************************************************************* resolvParamsSet - set the parameters which control the resolver library** This routine sets the resolver parameters.  <pResolvParams> passes in* a pointer to a RESOLV_PARAMS_S structure, which is defined as follows: * .CS*     typedef struct*        {*        char   queryOrder;*        char   domainName [MAXDNAME];*        char   nameServersAddr [MAXNS][MAXIPADDRLEN];*        } RESOLV_PARAMS_S;* .CE* Use the members of this structure to specify the settings you want to * apply to the resolver.  It is important to remember that multiple tasks * can use the resolver library and that the settings specified in * this RESOLV_PARAMS_S structure affect all queries from all tasks.  In * addition, you should set resolver parameters at initialization and not * while queries could be in progress. Otherwise, the results of the query * are unpredictable.  ** Before calling resolvParamsSet(), you should first call resolvParamsGet() * to populate a RESOLV_PARAMS_S structure with the current settings.  Then* you change the values of the members that interest you.    ** Valid values for the `queryOrder' member of RESOLV_PARAMS_S structure * are defined in resolvLib.h.  Set the `domainName' member to the domain to * which this resolver belongs.  Set the `nameServersAddr' member to the IP * addresses of the DNS server that the resolver can query.  You must specify * the IP addresses in standard dotted decimal notation.  This function tries * to validate the values in the `queryOrder' and `nameServerAddr' members.  * This function does not try to validate the domain name.  ** RETURNS: OK if the parameters are valid, ERROR otherwise.** SEE ALSO:* resolvGetHostByName(), resolvGetHostByAddr(), resolvDNExpand(),* resolvDNComp(), resolvSend(), resolvInit(), resolvParamsGet(),* resolvMkQuery(), resolvQuery()*/STATUS resolvParamsSet     (    RESOLV_PARAMS_S *  pResolvParams  /* ptr to resolver parameter struct */    )    {    ...    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品99久久久久| 欧美影院一区二区| 在线免费观看日本一区| 日韩免费在线观看| 亚洲综合在线免费观看| 九九热在线视频观看这里只有精品| 99久精品国产| 国产性天天综合网| 日本va欧美va瓶| 欧美在线短视频| 国产精品九色蝌蚪自拍| 国产九色sp调教91| 91精品国产一区二区三区| 怡红院av一区二区三区| 91久久精品一区二区二区| 久久久综合视频| 久草精品在线观看| 日韩视频免费观看高清完整版| 亚洲综合激情另类小说区| va亚洲va日韩不卡在线观看| 国产女人aaa级久久久级 | 精品99一区二区三区| 亚洲精品欧美在线| 91亚洲国产成人精品一区二区三| 国产婷婷色一区二区三区| 激情文学综合网| 日韩午夜精品视频| 蜜臀久久99精品久久久久宅男| 欧美久久久久久久久| 亚洲成av人在线观看| 欧美日韩和欧美的一区二区| 亚洲一级片在线观看| 欧洲一区在线观看| 亚洲成人激情自拍| 在线播放欧美女士性生活| 亚洲一区二区美女| 欧美精品九九99久久| 日韩影院精彩在线| 欧美tk丨vk视频| 国产一区不卡视频| 中文字幕第一区| 99在线精品视频| 亚洲主播在线播放| 欧美日韩激情一区| 狠狠色狠狠色综合日日91app| 精品电影一区二区| 成人一级黄色片| 亚洲欧洲成人精品av97| 91美女蜜桃在线| 视频一区视频二区中文字幕| 欧美一级二级在线观看| 国产麻豆91精品| 中文字幕中文字幕一区| 欧美亚洲丝袜传媒另类| 视频一区在线播放| 欧美经典一区二区三区| 一本大道综合伊人精品热热 | 国产一区美女在线| 国产网红主播福利一区二区| 91久色porny | 国产欧美一区二区精品性色超碰| 粗大黑人巨茎大战欧美成人| 一区二区三区在线播| 欧美一区永久视频免费观看| 国产精品亚洲一区二区三区妖精| 亚洲免费在线观看视频| 欧美一区二区三区人| 成人免费视频网站在线观看| 亚洲aaa精品| 国产精品亲子乱子伦xxxx裸| 欧美日韩亚洲综合一区二区三区| 国内精品伊人久久久久影院对白| 中文字幕精品三区| 欧美日韩亚洲综合一区二区三区| 国产精品18久久久久久久久久久久| 亚洲欧洲av一区二区三区久久| 在线不卡的av| 97久久精品人人做人人爽| 另类小说视频一区二区| 亚洲三级久久久| 久久亚洲精品国产精品紫薇| 91久久精品一区二区二区| 国产露脸91国语对白| 亚洲制服丝袜av| 中文字幕av不卡| 日韩免费成人网| 欧美视频中文一区二区三区在线观看| 国产麻豆精品久久一二三| 亚洲综合无码一区二区| 欧美极品少妇xxxxⅹ高跟鞋 | 中文字幕亚洲不卡| 日韩欧美国产综合在线一区二区三区 | 欧美日韩免费视频| a级高清视频欧美日韩| 免费观看久久久4p| 亚洲午夜私人影院| 日韩美女精品在线| 国产日韩亚洲欧美综合| 欧美mv日韩mv国产网站app| 在线亚洲一区观看| 91亚洲资源网| av午夜一区麻豆| 不卡的电影网站| 粉嫩绯色av一区二区在线观看| 久久66热re国产| 国内精品伊人久久久久av一坑| 日本aⅴ免费视频一区二区三区| 亚洲综合免费观看高清完整版 | 国产成人av一区| 精品亚洲免费视频| 久久国产精品区| 国内外成人在线视频| 韩国av一区二区| 国产成人精品三级| 成人性色生活片| 9i在线看片成人免费| 97久久精品人人澡人人爽| 91香蕉视频污| 色婷婷av一区二区三区大白胸| 在线免费av一区| 欧美日韩国产在线观看| 69p69国产精品| 欧美一级生活片| 精品国产免费视频| 国产欧美一区二区精品婷婷| 国产精品久久久久久久蜜臀 | 久久精品人人做人人综合 | 日韩午夜在线观看视频| 日韩欧美一卡二卡| 久久久99精品久久| 国产精品国产三级国产aⅴ入口 | 亚洲国产精品久久一线不卡| 亚洲午夜电影在线| 视频一区视频二区中文字幕| 久久成人免费日本黄色| 国产成人免费网站| 色婷婷亚洲一区二区三区| 欧美日韩一区精品| 欧美大白屁股肥臀xxxxxx| 欧美一区二区网站| 国产三级欧美三级| 亚洲综合久久久| 久久99精品视频| 91污片在线观看| 91精品欧美综合在线观看最新| 久久青草欧美一区二区三区| 黄一区二区三区| 懂色av噜噜一区二区三区av| 色欧美乱欧美15图片| 日韩欧美一级二级| 亚洲色图一区二区| 日韩国产欧美一区二区三区| 国产一区二区久久| 色88888久久久久久影院按摩| 日韩欧美一级二级三级久久久| 国产精品电影院| 久久国产乱子精品免费女| 99视频精品在线| 26uuu精品一区二区在线观看| 中文字幕色av一区二区三区| 青青草国产精品亚洲专区无| 97久久精品人人爽人人爽蜜臀| 91精品国产91久久久久久一区二区 | 国产精品资源在线| 欧美性色欧美a在线播放| 久久久久久久国产精品影院| 亚洲狠狠爱一区二区三区| 国产a区久久久| 欧美一区2区视频在线观看| 亚洲日本乱码在线观看| 玖玖九九国产精品| 欧美性猛片xxxx免费看久爱| 日本一区二区三区视频视频| 日本一区中文字幕 | 亚洲一区视频在线观看视频| 国产精品资源在线看| 3751色影院一区二区三区| 亚洲欧美日韩国产综合| 国产99久久久久| 久久久久久久久蜜桃| 免费在线观看日韩欧美| 欧美午夜精品免费| 亚洲精品五月天| 成人黄色在线网站| 国产亚洲va综合人人澡精品| 麻豆国产精品官网| 日韩一区二区三区视频在线 | 亚洲午夜精品一区二区三区他趣| a在线播放不卡| 亚洲欧美一区二区视频| 国产成人综合网站| 久久久www成人免费毛片麻豆| 裸体一区二区三区| 91精品国产综合久久香蕉的特点| 亚洲精品福利视频网站| 91香蕉视频mp4| 亚洲一区日韩精品中文字幕| 在线免费不卡电影| 国产乱色国产精品免费视频| 欧美一级在线视频|