v1.1.0
This release represent a major change.
- A framework for writable socket attributes is added. Attribute-aware versions of xcm_connect(), xcm_server() and xcm_accept() are now available, as well as a function xcm_attr_set(), to change attribute values after initial socket creation.
- A new API <xcm_attr_map.h> is added, to represent a set of attributes (e.g. passed to the new xcm_connect_a() function).
- Convenience wrappers to retrieve the value of boolean, integer or string type attributes value is added in <xcm_attr.h>
- The "xcm.local_addr" is now writable at the time of xcm_connect_a(), which allows the application to chose which local IP interface and/or port will be used for an outgoing connection (in BSD Socket terms: bind() before connect()). Available on TCP, UTLS, and TLS.
- A number of new read/write attributes related to TCP keepalive configuration are added to TCP and TLS (including such spawned from UTLS) connection sockets.
- The blocking/non-blocking socket configuration is turned into a read-write attribute "xcm.blocking".
- Fixes to various test cases.
- Some code reformatting (both in C and Python).
- SCTP control interface bugfix.
This release introduces API/ABI v0.15. It is backwards compatible.