Я не знаю, к какому API C ++ вы обращаетесь, но именно так вы делаете это на C-уровне. Вы можете использовать следующие функции в avahi для обновления записи TXT службы.
avahi_entry_group_update_service_txt (AvahiEntryGroup *g, ...)
avahi_entry_group_update_service_txt_strlst (AvahiEntryGroup *g, ...)
Прослушивающие клиенты получат событие обновленного сервиса.