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

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

?? upnp.h

?? 原來(lái)由英特爾制定的UPnP SDK的
?? H
?? 第 1 頁(yè) / 共 5 頁(yè)
字號(hào):
					{\tt SEEK_END} to move relative to 					the end of the file, or {\tt 					SEEK_SET} to specify an absolute 					offset. */     );   /** Called by the web server to close a file opened via the {\bf open}    *  callback.  It should return 0 on success, or a non-zero value on an     *  error.    */   int (*close) (     IN UpnpWebFileHandle fileHnd   /** The handle of the file to close. */     );};typedef struct virtual_Dir_List{    struct virtual_Dir_List *next;    char dirName[NAME_SIZE];} virtualDirList;/** All callback functions share the same prototype, documented below. *  Note that any memory passed to the callback function *  is valid only during the callback and should be copied if it *  needs to persist.  This callback function needs to be thread *  safe.  The context of the callback is always on a valid thread  *  context and standard synchronization methods can be used.  Note,  *  however, because of this the callback cannot call SDK functions *  unless explicitly noted. * *  \begin{verbatim}      int CallbackFxn( Upnp_EventType EventType, void* Event, void* Cookie );    \end{verbatim}  * *  where {\bf EventType} is the event that triggered the callback,  *  {\bf Event} is a structure that denotes event-specific information for that *  event, and {\bf Cookie} is the user data passed when the callback was *  registered. * *  See {\bf Upnp_EventType} for more information on the callback values and *  the associated {\bf Event} parameter.   * *  The return value of the callback is currently ignored.  It may be used *  in the future to communicate results back to the SDK. */typedef int  (*Upnp_FunPtr) (    IN Upnp_EventType EventType,     IN void *Event,     IN void *Cookie    );/*! @} */ /* Constants, Structures, and Types */#ifdef __cplusplusextern "C" {#endif /* __cplusplus *//*! @name Initialization and Registration *//*! @{ *//** Initializes the Linux SDK for UPnP Devices. This function must be called *  before any other API function can be called.  It should be called *  only once.  Subsequent calls to this API return a {\tt UPNP_E_INIT} *  error code. * *  Optionally, the application can specify a host IP address (in the *  case of a multi-homed configuration) and a port number to use for *  all UPnP operations.  Since a port number can be used only by one *  process, multiple processes using the SDK must specify *  different port numbers. * *  If unspecified, the SDK will use the first adapter's IP address  *  and an arbitrary port. * *  This call is synchronous. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_OUTOF_MEMORY}: Insufficient resources exist  *              to initialize the SDK. *      \item {\tt UPNP_E_INIT}: The SDK is already initialized.  *      \item {\tt UPNP_E_INIT_FAILED}: The SDK initialization  *              failed for an unknown reason. *      \item {\tt UPNP_E_SOCKET_BIND}: An error occurred binding a socket. *      \item {\tt UPNP_E_LISTEN}: An error occurred listening to a socket. *      \item {\tt UPNP_E_OUTOF_SOCKET}: An error ocurred creating a socket. *      \item {\tt UPNP_E_INTERNAL_ERROR}: An internal error ocurred. *    \end{itemize} */EXPORT_SPEC int UpnpInit(    IN const char *HostIP,      /** The host IP address to use, in                                     string format, for example "192.168.0.1",                                     or {\tt NULL} to use the first adapter's                                     IP address. */    IN unsigned short DestPort  /** The destination port number to use.  0                                     will pick an arbitrary free port. */    );/** Terminates the Linux SDK for UPnP Devices. This function must be the last  *  API function called. It should be called only once. Subsequent calls to  *  this API return a {\tt UPNP_E_FINISH} error code. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_FINISH}: The SDK is already terminated or  *                                 it is not initialized.  *    \end{itemize} */EXPORT_SPEC int UpnpFinish();/** If '0' is used as the port number in {\bf UpnpInit}, then this *  function can be used to retrieve the actual port allocated to *  the SDK. If {\bf UpnpInit} has not succeeded then 0 is  *  returned. * *  @return [unsigned short] The port on which an internal server is  *                           listening for UPnP related requests.  */EXPORT_SPEC unsigned short UpnpGetServerPort(void);/** If {\tt NULL} is used as the IP address in {\bf UpnpInit}, then this *  function can be used to retrieve the actual interface address *  on which device is running. If {\bf UpnpInit} has not succeeded  *  then {\tt NULL} is returned. * *  @return [char*] The IP address on which an internal server is listening  *                  for UPnP related requests.  */EXPORT_SPEC char * UpnpGetServerIpAddress(void);/** {\bf UpnpRegisterClient} registers a control point application with the *  SDK.  A control point application cannot make any other API calls *  until it registers using this function. * *  {\bf UpnpRegisterClient} is a synchronous call and generates no callbacks. *  Callbacks can occur as soon as this function returns. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_FINISH}: The SDK is already terminated or  *                                 is not initialized.  *      \item {\tt UPNP_E_INVALID_PARAM}: Either {\bf Callback} or {\bf Hnd}  *              is not a valid pointer. *      \item {\tt UPNP_E_OUTOF_MEMORY}: Insufficient resources exist to  *              register this control point. *    \end{itemize} */EXPORT_SPEC int UpnpRegisterClient(    IN Upnp_FunPtr Callback,   /** Pointer to a function for receiving                                    asynchronous events. */    IN const void *Cookie,     /** Pointer to user data returned with the                                    callback function when invoked. */    OUT UpnpClient_Handle *Hnd /** Pointer to a variable to store the                                    new control point handle. */    );  /** {\bf UpnpRegisterRootDevice} registers a device application with *  the SDK.  A device application cannot make any other API *  calls until it registers using this function.  Device applications *  can also register as control points (see {\bf UpnpRegisterClient} *  to get a control point handle to perform control point *  functionality). * *  {\bf UpnpRegisterRootDevice} is synchronous and does not generate *  any callbacks.  Callbacks can occur as soon as this function returns. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_FINISH}: The SDK is already terminated or  *                                 is not initialized.  *      \item {\tt UPNP_E_INVALID_DESC}: The description document was not  *              a valid device description. *      \item {\tt UPNP_E_INVALID_URL}: The URL for the description document  *              is not valid. *      \item {\tt UPNP_E_INVALID_PARAM}: Either {\bf Callback} or {\bf Hnd}  *              is not a valid pointer or {\bf DescURL} is {\tt NULL}. *      \item {\tt UPNP_E_NETWORK_ERROR}: A network error occurred. *      \item {\tt UPNP_E_SOCKET_WRITE}: An error or timeout occurred writing  *              to a socket. *      \item {\tt UPNP_E_SOCKET_READ}: An error or timeout occurred reading  *              from a socket. *      \item {\tt UPNP_E_SOCKET_BIND}: An error occurred binding a socket. *      \item {\tt UPNP_E_SOCKET_CONNECT}: An error occurred connecting the  *              socket. *      \item {\tt UPNP_E_OUTOF_SOCKET}: Too many sockets are currently  *              allocated. *      \item {\tt UPNP_E_OUTOF_MEMORY}: There are insufficient resources to  *              register this root device. *    \end{itemize} */EXPORT_SPEC int UpnpRegisterRootDevice(    IN const char *DescUrl,    /** Pointer to a string containing the                                    description URL for this root device                                    instance. */    IN Upnp_FunPtr Callback,   /** Pointer to the callback function for                                    receiving asynchronous events. */    IN const void *Cookie,     /** Pointer to user data returned with the                                    callback function when invoked. */    OUT UpnpDevice_Handle *Hnd /** Pointer to a variable to store the                                    new device handle. */    );/** {\bf UpnpRegisterRootDevice2} is similar to {\bf UpnpRegisterRootDevice}, *  except that it also allows the description document to be specified as a  *  file or a memory buffer. The description can also be configured to have the *  correct IP and port address. * *  NOTE: For the configuration to be functional, the internal web server *  MUST be present. In addition, the web server MUST be activated *  (using {\bf UpnpSetWebServerRootDir}) before calling this function. *  The only condition where the web server can be absent is if the  *  description document is specified as a URL and no configuration is  *  required (i.e. {\tt config_baseURL = 0}.) * *  {\bf UpnpRegisterRootDevice2} is synchronous and does not generate *  any callbacks.  Callbacks can occur as soon as this function returns. * *  Examples of using different types of description documents: *  \begin{verbatim}    1) Description specified as a URL:          descriptionType == UPNPREG_URL_DESC          description is the URL          bufferLen = 0 (ignored)    2) Description specified as a file:          descriptionType == UPNPREG_FILENAME_DESC          description is a filename          bufferLen = 0 (ignored)    3) Description specified as a memory buffer:          descriptionType == UPNPREG_BUF_DESC          description is pointer to a memory buffer          bufferLen == length of memory buffer    \end{verbatim} * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_FINISH}: The SDK is already terminated or  *                                 is not initialized. *      \item {\tt UPNP_E_INVALID_DESC}: The description document is not  *              a valid device description. *      \item {\tt UPNP_E_INVALID_PARAM}: Either {\bf Callback} or {\bf Hnd}  *              is not a valid pointer or {\bf DescURL} is {\tt NULL}. *      \item {\tt UPNP_E_NETWORK_ERROR}: A network error occurred. *      \item {\tt UPNP_E_SOCKET_WRITE}: An error or timeout occurred writing  *              to a socket. *      \item {\tt UPNP_E_SOCKET_READ}: An error or timeout occurred reading  *              from a socket. *      \item {\tt UPNP_E_SOCKET_BIND}: An error occurred binding a socket. *      \item {\tt UPNP_E_SOCKET_CONNECT}: An error occurred connecting the  *              socket. *      \item {\tt UPNP_E_OUTOF_SOCKET}: Too many sockets are currently  *              allocated. *      \item {\tt UPNP_E_OUTOF_MEMORY}: There are insufficient resources to  *              register this root device. *      \item {\tt UPNP_E_URL_TOO_BIG}: Length of the URL is bigger than the  *              internal buffer. *      \item {\tt UPNP_E_FILE_NOT_FOUND}: The description file could not  *              be found. *      \item {\tt UPNP_E_FILE_READ_ERROR}: An error occurred reading the  *              description file. *      \item {\tt UPNP_E_INVALID_URL}: The URL to the description document  *              is invalid. *      \item {\tt UPNP_E_EXT_NOT_XML}: The URL to the description document  *              or file should have a {\tt .xml} extension. *      \item {\tt UPNP_E_NO_WEB_SERVER}: The internal web server has been  *              compiled out; the SDK cannot configure itself from the  *              description document. *    \end{itemize} */ EXPORT_SPEC int UpnpRegisterRootDevice2(    IN Upnp_DescType descriptionType,/** The type of the description                                          document. */    IN const char* description,      /** Treated as a URL, file name or                                          memory buffer depending on                                          description type. */    IN size_t bufferLen,             /** The length of memory buffer if                                          passing a description in a buffer,                                          otherwise it is ignored. */    IN int config_baseURL,           /** If nonzero, {\tt URLBase} of                                          description document is                                          configured and the description                                          is served using the internal                                          web server. */    IN Upnp_FunPtr Fun,              /** Pointer to the callback function                                          for receiving asynchronous                                          events. */    IN const void* Cookie,           /** Pointer to user data returned                                          with the callback function when                                          invoked. */    OUT UpnpDevice_Handle* Hnd       /** Pointer to a variable to store                                          the new device handle. */    );/** {\bf UpnpUnRegisterClient} unregisters a control point application,  *  unsubscribing all active subscriptions. After this call, the  *  {\bf UpnpClient_Handle} is no longer valid. * *  {\bf UpnpUnRegisterClient} is a synchronous call and generates no *  callbacks.  The SDK generates no more callbacks after this  *  function returns. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_INVALID_HANDLE}: The handle is not a valid control  *                   point handle. *    \end{itemize} */EXPORT_SPEC int UpnpUnRegisterClient(    IN UpnpClient_Handle Hnd  /** The handle of the control point instance                                   to unregister. */    );/** Unregisters a root device registered with {\bf UpnpRegisterRootDevice} or *  {\bf UpnpRegisterRootDevice2}. After this call, the  *  {\bf UpnpDevice_Handle} is no longer valid. For all advertisements that  *  have not yet expired, the SDK sends a device unavailable message  *  automatically. * *  {\bf UpnpUnRegisterRootDevice} is a synchronous call and generates no *  callbacks.  Once this call returns, the SDK will no longer  *  generate callbacks to the application. * *  @return [int] An integer representing one of the following: *    \begin{itemize} *      \item {\tt UPNP_E_SUCCESS}: The operation completed successfully. *      \item {\tt UPNP_E_INVALID_HANDLE}: The handle is not a valid   *              device handle. *    \end{itemize} */EXPORT_SPEC int UpnpUnRegisterRootDevice(   IN UpnpDevice_Handle /** The handle of the root device instance to 

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜精品久久久久久不卡8050| 成人av在线电影| 亚洲国产精品嫩草影院| 亚洲乱码中文字幕综合| 国产精品久久久久桃色tv| 中文字幕欧美激情一区| 久久青草国产手机看片福利盒子| 日韩小视频在线观看专区| 日韩欧美你懂的| 日韩精品在线一区二区| 久久久久久麻豆| 久久精品视频免费| 国产精品蜜臀av| 亚洲女性喷水在线观看一区| 亚洲免费资源在线播放| 一区二区三区欧美久久| 一区二区免费看| 日韩精品免费专区| 精品无人区卡一卡二卡三乱码免费卡 | 色婷婷av一区二区三区大白胸| 不卡av在线网| 欧美性猛交一区二区三区精品 | 国产精品网站在线| 亚洲天堂免费看| 亚洲va中文字幕| 韩国在线一区二区| 91在线精品一区二区| 在线视频国产一区| 91精品国产综合久久香蕉的特点| 精品乱人伦小说| 国产精品久久久久一区二区三区| 亚洲精品写真福利| 午夜激情久久久| 经典一区二区三区| 99久久婷婷国产综合精品 | 亚洲卡通欧美制服中文| 午夜久久电影网| 国内精品不卡在线| 91色九色蝌蚪| 337p亚洲精品色噜噜狠狠| 2020国产精品自拍| 亚洲美女一区二区三区| 蜜臀av性久久久久蜜臀av麻豆| 成人一级片在线观看| 在线亚洲一区二区| 久久久久久久网| 伊人色综合久久天天人手人婷| 麻豆国产精品官网| av在线免费不卡| 91麻豆精品国产91久久久更新时间| 精品91自产拍在线观看一区| 亚洲欧美怡红院| 久久99在线观看| 色综合视频在线观看| 欧美tk丨vk视频| 怡红院av一区二区三区| 国产在线精品一区二区夜色| 91丨九色丨黑人外教| 欧美一级在线观看| 一区二区视频在线| 国产精品白丝jk白祙喷水网站| 欧美日韩中文国产| 中文字幕国产精品一区二区| 日韩精品欧美成人高清一区二区| 成人免费av网站| 精品欧美一区二区久久| 亚洲尤物在线视频观看| 国产精品综合视频| 这里只有精品99re| 亚洲另类中文字| 国产福利一区二区三区视频在线| 欧美裸体一区二区三区| 最新中文字幕一区二区三区| 激情久久久久久久久久久久久久久久| 色婷婷av一区二区三区gif | 蜜桃在线一区二区三区| 色婷婷av一区二区三区之一色屋| 国产亚洲成av人在线观看导航| 日韩av在线播放中文字幕| 91在线免费视频观看| 国产情人综合久久777777| 免费观看日韩电影| 欧美亚洲禁片免费| 国产精品麻豆视频| 国产精品自在欧美一区| 日韩欧美一二三四区| 亚洲h动漫在线| 91福利国产成人精品照片| 日韩一区欧美小说| 成人a级免费电影| 久久精品综合网| 国产精品一级在线| 久久免费国产精品| 国产做a爰片久久毛片| 日韩欧美国产系列| 日本不卡一二三| 777色狠狠一区二区三区| 亚洲国产中文字幕| 欧美日韩亚洲综合一区二区三区| 一区二区高清免费观看影视大全| av综合在线播放| 亚洲色图一区二区三区| 99热99精品| 日韩伦理电影网| 91丨九色丨蝌蚪丨老版| 一区二区三区美女视频| 日本电影欧美片| 亚洲综合一区在线| 欧美日韩国产大片| 亚洲va韩国va欧美va| 欧美精品久久99| 日本视频一区二区三区| 日韩三级视频在线观看| 裸体歌舞表演一区二区| 久久婷婷久久一区二区三区| 国产精品一卡二卡| 国产精品国产自产拍高清av王其| 99久久综合精品| 亚洲精品大片www| 欧美精选一区二区| 久久国产日韩欧美精品| 久久亚洲精品小早川怜子| 成人自拍视频在线| ㊣最新国产の精品bt伙计久久| 在线免费观看日韩欧美| 日韩高清在线电影| 久久久电影一区二区三区| 成人aaaa免费全部观看| 一区二区三区在线视频播放| 欧美久久久影院| 精品一二三四在线| 中文字幕国产一区二区| 欧美中文字幕一区二区三区| 日本欧美久久久久免费播放网| 久久综合视频网| 91在线小视频| 五月天欧美精品| 久久久一区二区三区| 91免费看`日韩一区二区| 亚洲国产精品一区二区尤物区| 日韩一区二区三区免费观看| 成人夜色视频网站在线观看| 洋洋av久久久久久久一区| 日韩午夜激情视频| 成人av免费网站| 天天综合天天综合色| 国产婷婷色一区二区三区四区| 在线一区二区三区| 国产又黄又大久久| 一区二区高清在线| 26uuu色噜噜精品一区| 91网址在线看| 久久成人综合网| 亚洲精品一二三| 久久久久久久久久电影| 欧美日韩在线精品一区二区三区激情| 国内精品国产三级国产a久久| 亚洲精品日日夜夜| 精品免费国产一区二区三区四区| 色悠悠久久综合| 国内成人精品2018免费看| 亚洲一区自拍偷拍| 欧美激情资源网| 欧美一区二区三区性视频| 91污在线观看| 国产乱码一区二区三区| 午夜在线成人av| 国产精品高潮呻吟久久| 欧美大片在线观看一区| 91日韩在线专区| 国产福利一区在线| 久久国产尿小便嘘嘘尿| 亚洲一区二三区| 国产精品美女久久福利网站| 精品区一区二区| 777色狠狠一区二区三区| 色综合激情久久| 北条麻妃国产九九精品视频| 精品亚洲aⅴ乱码一区二区三区| 亚洲成人黄色小说| 亚洲伦理在线精品| 中文字幕第一区| 精品国产百合女同互慰| 欧美精品日韩综合在线| 91女神在线视频| 成人av小说网| 国产成人在线视频播放| 久久99精品久久久久久动态图| 午夜精品福利久久久| 亚洲午夜精品一区二区三区他趣| 国产精品三级视频| 久久久不卡网国产精品一区| 日韩三级中文字幕| 欧美精品乱人伦久久久久久| 91国产成人在线| 一本大道久久a久久综合| 91香蕉视频黄| 97se亚洲国产综合自在线不卡| 高清成人免费视频| 国产精品一二一区|