Squashed 'third_party/rawrtc/rawrtc-data-channel/' content from commit 7b1b8d57c
Change-Id: I84850720e2b51961981d55f67238f4d282314fff
git-subtree-dir: third_party/rawrtc/rawrtc-data-channel
git-subtree-split: 7b1b8d57c6d07da18cc0de8bbca8cc5e8bd06eae
diff --git a/src/sctp_transport/utils.c b/src/sctp_transport/utils.c
new file mode 100644
index 0000000..7c69e5b
--- /dev/null
+++ b/src/sctp_transport/utils.c
@@ -0,0 +1,38 @@
+#include <rawrtcdc/sctp_transport.h>
+
+/*
+ * Get the corresponding name for an SCTP transport state.
+ */
+char const* rawrtc_sctp_transport_state_to_name(enum rawrtc_sctp_transport_state const state) {
+ switch (state) {
+ case RAWRTC_SCTP_TRANSPORT_STATE_NEW:
+ return "new";
+ case RAWRTC_SCTP_TRANSPORT_STATE_CONNECTING:
+ return "connecting";
+ case RAWRTC_SCTP_TRANSPORT_STATE_CONNECTED:
+ return "connected";
+ case RAWRTC_SCTP_TRANSPORT_STATE_CLOSED:
+ return "closed";
+ default:
+ return "???";
+ }
+}
+
+/*
+ * Get the corresponding name for a congestion control algorithm.
+ */
+char const* rawrtc_sctp_transport_congestion_ctrl_algorithm_to_name(
+ enum rawrtc_sctp_transport_congestion_ctrl const algorithm) {
+ switch (algorithm) {
+ case RAWRTC_SCTP_TRANSPORT_CONGESTION_CTRL_RFC2581:
+ return "RFC2581";
+ case RAWRTC_SCTP_TRANSPORT_CONGESTION_CTRL_HSTCP:
+ return "HSTCP";
+ case RAWRTC_SCTP_TRANSPORT_CONGESTION_CTRL_HTCP:
+ return "HTCP";
+ case RAWRTC_SCTP_TRANSPORT_CONGESTION_CTRL_RTCC:
+ return "RTCC";
+ default:
+ return "???";
+ }
+}