X-Git-Url: http://git.meshlink.io/?a=blobdiff_plain;f=avahi-core%2Fcore.h;h=f14dc849a2edcfc7f2597c5f70b79660311c6c95;hb=4d83da07cdbe3cb768bc56f543ee9396b14fb48a;hp=e73abd2612b35e63b20aba6b7e2aaa1b2cd74879;hpb=7c171df2b2ae4d3f2cbab669d5b5b96562bdd9a8;p=catta diff --git a/avahi-core/core.h b/avahi-core/core.h index e73abd2..f14dc84 100644 --- a/avahi-core/core.h +++ b/avahi-core/core.h @@ -1,21 +1,19 @@ #ifndef foocorehfoo #define foocorehfoo -/* $Id$ */ - /*** This file is part of avahi. - + avahi is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. - + avahi is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. - + You should have received a copy of the GNU Lesser General Public License along with avahi; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 @@ -31,6 +29,7 @@ typedef struct AvahiServer AvahiServer; #include #include #include +#include #include AVAHI_C_DECL_BEGIN @@ -47,8 +46,11 @@ typedef struct AvahiServerConfig { char *domain_name; /**< Default domain name. If left empty defaults to .local */ int use_ipv4; /**< Enable IPv4 support */ int use_ipv6; /**< Enable IPv6 support */ + AvahiStringList *allow_interfaces;/**< Allow specific interface to be used for Avahi */ + AvahiStringList *deny_interfaces; /**< Deny specific interfaces to be used for Avahi */ int publish_hinfo; /**< Register a HINFO record for the host containing the local OS and CPU type */ int publish_addresses; /**< Register A, AAAA and PTR records for all local IP addresses */ + int publish_no_reverse; /**< Do not register PTR records */ int publish_workstation; /**< Register a _workstation._tcp service */ int publish_domain; /**< Announce the local domain for browsing */ int check_response_ttl; /**< If enabled the server ignores all incoming responses with IP TTL != 255. Newer versions of the RFC do no longer contain this check, so it is disabled by default. */ @@ -63,6 +65,11 @@ typedef struct AvahiServerConfig { AvahiStringList *browse_domains; /**< Additional browsing domains */ int disable_publishing; /**< Disable publishing of any record */ int allow_point_to_point; /**< Enable publishing on POINTOPOINT interfaces */ + int publish_a_on_ipv6; /**< Publish an IPv4 A RR on IPv6 sockets */ + int publish_aaaa_on_ipv4; /**< Publish an IPv4 A RR on IPv6 sockets */ + unsigned n_cache_entries_max; /**< Maximum number of cache entries per interface */ + AvahiUsec ratelimit_interval; /**< If non-zero, rate-limiting interval parameter. */ + unsigned ratelimit_burst; /**< If ratelimit_interval is non-zero, rate-limiting burst parameter. */ } AvahiServerConfig; /** Allocate a new mDNS responder object. */ @@ -148,6 +155,12 @@ uint32_t avahi_server_get_local_service_cookie(AvahiServer *s); /** Set the wide area DNS servers */ int avahi_server_set_wide_area_servers(AvahiServer *s, const AvahiAddress *a, unsigned n); +/** Set the browsing domains */ +int avahi_server_set_browse_domains(AvahiServer *s, AvahiStringList *domains); + +/** Return the current configuration of the server \since 0.6.17 */ +const AvahiServerConfig* avahi_server_get_config(AvahiServer *s); + AVAHI_C_DECL_END #endif