Hi Alexander,Firstly, thank you for your work with Golang avahi bindings as well as contributing to the improvement and clarity of Avahi API documentation!
I have been working in the area of unicast DNS-SD and we have a work-in-progress prototype to allow decentralised unicast DNSSEC updates which includes WA DNS-SD structures.
One core extension of our work could potentially be tighter integration with Avahi. Avahi tools already support basic unicast browsing.
For example: avahi-browse -batd zembla.zenr.io+ n/a n/a floodgap _gopher._tcp zembla.zenr.io + n/a n/a zembla _gopher._tcp zembla.zenr.io + n/a n/a zembla _ssh._tcp zembla.zenr.io + n/a n/a PTF Demo Day - DE _http._tcp zembla.zenr.io + n/a n/a Freifunk Berlin _http._tcp zembla.zenr.io + n/a n/a PTF Demo Day - EN _http._tcp zembla.zenr.io + n/a n/a Freifunk - Free Networks _http._tcp zembla.zenr.io + n/a n/a sig0namectl Homepage _http._tcp zembla.zenr.io + n/a n/a Zembla Resource Map _http._tcp zembla.zenr.io + n/a n/a Berlin - Official Website - EN _http._tcp zembla.zenr.io + n/a n/a redb _loc._udp redb.zenr.io + n/a n/a zembla _loc._udp zembla.zenr.io + n/a n/a bluebox _loc._udp bluebox.zenr.io + n/a n/a op6 _loc._udp op6.zenr.io + n/a n/a cephalo13 _loc._udp cephalo13.zenr.io + n/a n/a zembla _telnet._tcp zembla.zenr.io + n/a n/a mapscii _telnet._tcp zembla.zenr.io
Does your work currently extend into the unicast domain (pun intended) as it is or would be easy to extend into?
Thanks & Regards, Adam.PS. Details of our early(!) work-in-progress prototype can be found at https://sig0namectl.networkcommons.org - all comments, thoughts, & criticisms are gratefully valued!
On 20/11/2024 09:12, Alexander Pevzner wrote:
Hi,My name is Alexander Pevzner, and I am the author of two widely distributed projects: sane-airscan (a "driverless" driver for SANE scanners) and ipp-usb (a daemon for IPP-over-USB printer support). Both projects utilize Avahi extensively.I am excited to announce the release of a new Golang binding for Avahi: https://github.com/alexpevzner/go-avahiThis binding aims to closely mirror the original C API, with a few exceptions:- It reports events via Go channels instead of callbacks, which is more idiomatic in Golang. - It follows Go naming conventions (e.g., NewAddressResolver vs. avahi_address_resolver_new). - It provides an automatic workaround for Avahi issues related to localhost and loopback address handling.- It implies the AVAHI_CLIENT_NO_FAIL mode.Additionally, I have made an effort to create comprehensive documentation for the Avahi API:https://pkg.go.dev/github.com/alexpevzner/go-avahiSince the Go API implemented in this package closely resembles the original C API, this documentation may also be useful for users of other programming languages.
OpenPGP_0xE4C76DBFE283909C.asc
Description: OpenPGP public key
OpenPGP_signature.asc
Description: OpenPGP digital signature
