# libxaal A minimal xAAL library in C Conforms to xAAL specification v0.6 Based on libcbor (0.5), libuuid1 (2.29.1), libsodium (1.0.11) (e.g. use debian packages: uuid-dev libsodium-dev libcbor[*] ) ## 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 an parses header - 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 json array / as a vector / as a (va_)list) - xAAL_notify_alive() xAAL_reply_getDescription() xAAL_reply_getBusConfig() xAAL_reply_setBusConfig() Helpers to send classical 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 - 2017 - 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. ## [*] Note about libcbor Libcbor is not yet packaged by debian (spring 2017). However, it's easy to build it from sources. See Cookbook for impatiens: cd /usr/local/src wget -O libcbor-0.5.0.tar.gz https://github.com/PJK/libcbor/archive/v0.5.0.tar.gz tar xvfz libcbor-0.5.0.tar.gz cd libcbor-0.5.0 mkdir build; cd build cmake .. make cbor ; make cbor_shared make package sudo dpkg -i libcbor-0.5.0-Linux.deb