⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 defs.h

📁 hid 应用代码 支持输入输出端口扩展,模拟量采集.
💻 H
📖 第 1 页 / 共 2 页
字号:
 * informed about state changes with the callback function supplied to * avahi_client_new(). If the client is forced to disconnect from the * server it will enter AVAHI_CLIENT_FAILURE state with * avahi_client_errno() == AVAHI_ERR_DISCONNECTED. Free the * AvahiClient object in that case and reconnect to the server anew - * again with passing AVAHI_CLIENT_NO_FAIL to avahi_client_new(). * * We encourage to implement this in all software where service * discovery is not an integral part of application. e.g. use it in * all kinds of background daemons, but not in software like iChat * compatible IM software. * * For now AVAHI_CLIENT_NO_FAIL cannot deal with D-Bus daemon restarts. * * \section domains How to Deal Properly with Browsing Domains * * Due to the introduction of wide-area DNS-SD the correct handling of * domains becomes more important for Avahi enabled applications. All * applications that offer the user a list of services discovered with * Avahi should offer some kind of editable drop down box where the * user can either enter his own domain or select one of those offered * by AvahiDomainBrowser. The default domain to browse should be the * one returned by avahi_client_get_domain_name(). The list of domains * returned by AvahiDomainBrowser is assembled by the browsing domains * configured in the daemon's configuration file, the domains * announced inside the default domain, the domains set with the * environment variable $AVAHI_BROWSE_DOMAINS (colon-seperated) on the * client side and the domains set in the XDG configuration file * ~/.config/avahi/browse-domains on the client side (seperated by * newlines). File managers offering some kind of "Network * Neighborhood" folder should show the entries of the default domain * right inside that and offer subfolders for the browsing domains * returned by AvahiDomainBrowser. */AVAHI_C_DECL_BEGIN/** @{ \name States *//** States of a server object */typedef enum {    AVAHI_SERVER_INVALID,          /**< Invalid state (initial) */     AVAHI_SERVER_REGISTERING,      /**< Host RRs are being registered */    AVAHI_SERVER_RUNNING,          /**< All host RRs have been established */    AVAHI_SERVER_COLLISION,        /**< There is a collision with a host RR. All host RRs have been withdrawn, the user should set a new host name via avahi_server_set_host_name() */    AVAHI_SERVER_FAILURE           /**< Some fatal failure happened, the server is unable to proceed */} AvahiServerState;/** States of an entry group object */typedef enum {    AVAHI_ENTRY_GROUP_UNCOMMITED,    /**< The group has not yet been commited, the user must still call avahi_entry_group_commit() */    AVAHI_ENTRY_GROUP_REGISTERING,   /**< The entries of the group are currently being registered */    AVAHI_ENTRY_GROUP_ESTABLISHED,   /**< The entries have successfully been established */    AVAHI_ENTRY_GROUP_COLLISION,     /**< A name collision for one of the entries in the group has been detected, the entries have been withdrawn */    AVAHI_ENTRY_GROUP_FAILURE        /**< Some kind of failure happened, the entries have been withdrawn */} AvahiEntryGroupState;/** @} *//** @{ \name Flags *//** Some flags for publishing functions */typedef enum {    AVAHI_PUBLISH_UNIQUE = 1,           /**< For raw records: The RRset is intended to be unique */    AVAHI_PUBLISH_NO_PROBE = 2,         /**< For raw records: Though the RRset is intended to be unique no probes shall be sent */    AVAHI_PUBLISH_NO_ANNOUNCE = 4,      /**< For raw records: Do not announce this RR to other hosts */    AVAHI_PUBLISH_ALLOW_MULTIPLE = 8,   /**< For raw records: Allow multiple local records of this type, even if they are intended to be unique *//** \cond fulldocs */    AVAHI_PUBLISH_NO_REVERSE = 16,      /**< For address records: don't create a reverse (PTR) entry */    AVAHI_PUBLISH_NO_COOKIE = 32,       /**< For service records: do not implicitly add the local service cookie to TXT data *//** \endcond */    AVAHI_PUBLISH_UPDATE = 64,          /**< Update existing records instead of adding new ones *//** \cond fulldocs */    AVAHI_PUBLISH_USE_WIDE_AREA = 128,  /**< Register the record using wide area DNS (i.e. unicast DNS update) */    AVAHI_PUBLISH_USE_MULTICAST = 256   /**< Register the record using multicast DNS *//** \endcond */} AvahiPublishFlags;/** Some flags for lookup functions */typedef enum {/** \cond fulldocs */    AVAHI_LOOKUP_USE_WIDE_AREA = 1,    /**< Force lookup via wide area DNS */    AVAHI_LOOKUP_USE_MULTICAST = 2,    /**< Force lookup via multicast DNS *//** \endcond */    AVAHI_LOOKUP_NO_TXT = 4,           /**< When doing service resolving, don't lookup TXT record */    AVAHI_LOOKUP_NO_ADDRESS = 8        /**< When doing service resolving, don't lookup A/AAAA record */} AvahiLookupFlags;/** Some flags for lookup callback functions */typedef enum {    AVAHI_LOOKUP_RESULT_CACHED = 1,         /**< This response originates from the cache */    AVAHI_LOOKUP_RESULT_WIDE_AREA = 2,      /**< This response originates from wide area DNS */    AVAHI_LOOKUP_RESULT_MULTICAST = 4,      /**< This response originates from multicast DNS */    AVAHI_LOOKUP_RESULT_LOCAL = 8,          /**< This record/service resides on and was announced by the local host. Only available in service and record browsers and only on AVAHI_BROWSER_NEW. */    AVAHI_LOOKUP_RESULT_OUR_OWN = 16,       /**< This service belongs to the same local client as the browser object. Only available in avahi-client, and only for service browsers and only on AVAHI_BROWSER_NEW. */    AVAHI_LOOKUP_RESULT_STATIC = 32         /**< The returned data has been defined statically by some configuration option */} AvahiLookupResultFlags;/** @} *//** @{ \name Events *//** Type of callback event when browsing */typedef enum {    AVAHI_BROWSER_NEW,               /**< The object is new on the network */    AVAHI_BROWSER_REMOVE,            /**< The object has been removed from the network */    AVAHI_BROWSER_CACHE_EXHAUSTED,   /**< One-time event, to notify the user that all entries from the caches have been send */    AVAHI_BROWSER_ALL_FOR_NOW,       /**< One-time event, to notify the user that more records will probably not show up in the near future, i.e. all cache entries have been read and all static servers been queried */    AVAHI_BROWSER_FAILURE            /**< Browsing failed due to some reason which can be retrieved using avahi_server_errno()/avahi_client_errno() */} AvahiBrowserEvent;/** Type of callback event when resolving */typedef enum {    AVAHI_RESOLVER_FOUND,          /**< RR found, resolving successful */    AVAHI_RESOLVER_FAILURE         /**< Resolving failed due to some reason which can be retrieved using avahi_server_errno()/avahi_client_errno() */} AvahiResolverEvent;/** @} *//** @{ \name Other definitions *//** The type of domain to browse for */typedef enum {    AVAHI_DOMAIN_BROWSER_BROWSE,            /**< Browse for a list of available browsing domains */    AVAHI_DOMAIN_BROWSER_BROWSE_DEFAULT,    /**< Browse for the default browsing domain */    AVAHI_DOMAIN_BROWSER_REGISTER,          /**< Browse for a list of available registering domains */    AVAHI_DOMAIN_BROWSER_REGISTER_DEFAULT,  /**< Browse for the default registering domain */    AVAHI_DOMAIN_BROWSER_BROWSE_LEGACY,     /**< Legacy browse domain - see DNS-SD spec for more information */    AVAHI_DOMAIN_BROWSER_MAX} AvahiDomainBrowserType;/** @} *//** \cond fulldocs *//** For every service a special TXT item is implicitly added, which * contains a random cookie which is private to the local daemon. This * can be used by clients to determine if two services on two * different subnets are effectively the same. */#define AVAHI_SERVICE_COOKIE "org.freedesktop.Avahi.cookie"/** In invalid cookie as special value */#define AVAHI_SERVICE_COOKIE_INVALID (0)/** \endcond fulldocs *//** @{ \name DNS RR definitions *//** DNS record types, see RFC 1035 */enum {    AVAHI_DNS_TYPE_A = 0x01,    AVAHI_DNS_TYPE_NS = 0x02,    AVAHI_DNS_TYPE_CNAME = 0x05,    AVAHI_DNS_TYPE_SOA = 0x06,    AVAHI_DNS_TYPE_PTR = 0x0C,    AVAHI_DNS_TYPE_HINFO = 0x0D,    AVAHI_DNS_TYPE_MX = 0x0F,    AVAHI_DNS_TYPE_TXT = 0x10,    AVAHI_DNS_TYPE_AAAA = 0x1C,    AVAHI_DNS_TYPE_SRV = 0x21};/** DNS record classes, see RFC 1035 */enum {    AVAHI_DNS_CLASS_IN = 0x01          /**< Probably the only class we will ever use */};/** @} *//** The default TTL for RRs which contain a host name of some kind. */#define AVAHI_DEFAULT_TTL_HOST_NAME (120)/** The default TTL for all other records. */#define AVAHI_DEFAULT_TTL (75*60)AVAHI_C_DECL_END#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -