srt-c 0.3.0

C binding on srt-rs
Documentation
#if defined __linux__ || defined __APPLE__
#include <sys/socket.h>
#elif defined _WIN32 || defined WIN32
#include <winsock2.h>
#endif

using SRTSOCKET = int;

typedef int (*srt_listen_callback_fn)(void* opaq, SRTSOCKET ns, int,
                                      const sockaddr* peeraddr,
                                      const char* streamid);

extern "C" int call_callback_wrap_exception(srt_listen_callback_fn fn,
                                            void* opaq, SRTSOCKET ns,
                                            int hsversion,
                                            const sockaddr* peeraddr,
                                            const char* streamid, int* ret) {
  try {
    *ret = fn(opaq, ns, hsversion, peeraddr, streamid);
  } catch (...) {
    return 1;
  }
  return 0;
}