typedef struct ServiceBrowserInfo ServiceBrowserInfo;
typedef struct SyncServiceResolverInfo SyncServiceResolverInfo;
typedef struct AsyncServiceResolverInfo AsyncServiceResolverInfo;
+typedef struct RecordBrowserInfo RecordBrowserInfo;
#define CLIENTS_MAX 256
-#define OBJECTS_PER_CLIENT_MAX 50
+#define OBJECTS_PER_CLIENT_MAX 250
#define ENTRIES_PER_ENTRY_GROUP_MAX 20
struct EntryGroupInfo {
AVAHI_LLIST_FIELDS(AsyncServiceResolverInfo, async_service_resolvers);
};
+struct RecordBrowserInfo {
+ unsigned id;
+ Client *client;
+ AvahiSRecordBrowser *record_browser;
+ char *path;
+
+ AVAHI_LLIST_FIELDS(RecordBrowserInfo, record_browsers);
+};
+
struct Client {
unsigned id;
char *name;
AVAHI_LLIST_HEAD(ServiceBrowserInfo, service_browsers);
AVAHI_LLIST_HEAD(SyncServiceResolverInfo, sync_service_resolvers);
AVAHI_LLIST_HEAD(AsyncServiceResolverInfo, async_service_resolvers);
+ AVAHI_LLIST_HEAD(RecordBrowserInfo, record_browsers);
};
struct Server {
void* userdata);
DBusHandlerResult avahi_dbus_msg_async_service_resolver_impl(DBusConnection *c, DBusMessage *m, void *userdata);
+
+void avahi_dbus_record_browser_free(RecordBrowserInfo *i);
+DBusHandlerResult avahi_dbus_msg_record_browser_impl(DBusConnection *c, DBusMessage *m, void *userdata);
+void avahi_dbus_record_browser_callback(AvahiSRecordBrowser *b, AvahiIfIndex interface, AvahiProtocol protocol, AvahiBrowserEvent event, AvahiRecord *record, AvahiLookupResultFlags flags, void* userdata);
+
#endif