API polish
Some API is conflicting with it's implementation. For example,
RIST_API int rist_parse_address(const char *url, const struct rist_peer_config **peer_config);
peer_config
is a pointer to pointer to const struct rist_peer_config, so struct rist_peer_config cannot be modified. However, the implementation cast it to non-const and modified the struct.
The API is too clever to be useful. The pointer to pointer makes the implementation more complex and misleading the user.
There are other issue like API symmetric. Is there any strategy/plan to upgrade the API which can break the API/ABI?