AvahiEntryGroupState state /**< The new state of the entry group */,
void* userdata /* The arbitrary user data pointer originally passed to avahi_entry_group_new()*/);
+/** @{ \name Construction and destruction */
+
/** Create a new AvahiEntryGroup object */
AvahiEntryGroup* avahi_entry_group_new(
AvahiClient* c,
/** Clean up and free an AvahiEntryGroup object */
int avahi_entry_group_free (AvahiEntryGroup *);
+/** @} */
+
+/** @{ \name State */
+
/** Commit an AvahiEntryGroup. The entries in the entry group are now registered on the network. Commiting empty entry groups is considered an error. */
int avahi_entry_group_commit (AvahiEntryGroup*);
/** Get an AvahiEntryGroup's owning client instance */
AvahiClient* avahi_entry_group_get_client (AvahiEntryGroup*);
+/** @} */
+
+/** @{ \name Adding and updating entries */
+
/** Add a service. Takes a variable NULL terminated list of TXT record strings as last arguments. Please note that this service is not announced on the network before avahi_entry_group_commit() is called. */
int avahi_entry_group_add_service(
AvahiEntryGroup *group,
AvahiIfIndex interface /**< The interface this service shall be announced on. We recommend to pass AVAHI_IF_UNSPEC here, to announce on all interfaces. */,
AvahiProtocol protocol /**< The protocol this service shall be announced with, i.e. MDNS over IPV4 or MDNS over IPV6. We recommend to pass AVAHI_PROTO_UNSPEC here, to announce this service on all protocols the daemon supports. */,
AvahiPublishFlags flags /**< Usually 0, unless you know what you do */,
- const char *name /**< The name for the new service. May not be NULL. */,
+ const char *name /**< The name for the new service. Must be valid service name. i.e. a string shorter than 63 characters and valid UTF-8. May not be NULL. */,
const char *type /**< The service type for the new service, such as _http._tcp. May not be NULL. */,
const char *domain /**< The domain to register this domain in. We recommend to pass NULL here, to let the daemon decide */,
const char *host /**< The host this services is residing on. We recommend to pass NULL here, the daemon will than automatically insert the local host name in that case */,
const char *domain,
AvahiStringList *strlst);
+/** \cond fulldocs */
/** Add a host/address pair */
int avahi_entry_group_add_address(
AvahiEntryGroup *group,
AvahiPublishFlags flags,
const char *name /**< The FDQN of the new hostname to register */,
const AvahiAddress *a /**< The address this host name shall map to */);
+/** \endcond */
/** Add an arbitrary record. I hope you know what you do. */
int avahi_entry_group_add_record(
const void *rdata,
size_t size);
+/** @} */
+
AVAHI_C_DECL_END
#endif