# libxaal A minimal xAAL library in C Conforms to xAAL specification v0.7 Based on libcbor (0.5.0), libuuid (2.34), libsodium (1.0.18) (e.g. use debian packages: libcbor-dev uuid-dev libsodium-dev) ## Content The xAAL library is composed of xaal.h and libxaal.c It provides a minimal set of helpers for developping xAAL applications: - xAAL_join_bus(): Join the multicast (IPv4 or IPv6) xAAL bus. - xAAL_pass2key(): Build a ciffering key from a passphrase. - xAAL_add_wanted_target() / xAAL_del_wanted_target(): Manage the list of wanted targets. - xAAL_read_bus(): Receive a message matching wanted targets, parses the header, and gives data to the application. - xAAL_free_msg(): Free data allocated by xAAL_read_bus() in case of success. - xAAL_write_bus() / xAAL_write_busv() / xAAL_write_busl(): Send a message on the bus (targets provided as a cbor array / as a vector / as a (va_)list) - xAAL_notify_alive() xAAL_reply_get_description() Helpers to send usual replies. - xAAL_targets_match(): Test if an address belongs to the list of targets of a message Note: the xAAL library uses the prefix 'xAAL_' as namesapce. ## Copyright - Christophe Lohr - IMT Atlantique - 2019 - The library is provided according to the termes of the GNU Lesser General Public License v3.0 and following - Dual-licenses are accepted, contact us.