Squashed 'third_party/rawrtc/rawrtc/' content from commit aa3ae4b24
Change-Id: I38a655a4259b62f591334e90a1315bd4e7e4d8ec
git-subtree-dir: third_party/rawrtc/rawrtc
git-subtree-split: aa3ae4b247275cc6e69c30613b3a4ba7fdc82d1b
diff --git a/src/peer_connection_state/state.c b/src/peer_connection_state/state.c
new file mode 100644
index 0000000..5aa274c
--- /dev/null
+++ b/src/peer_connection_state/state.c
@@ -0,0 +1,45 @@
+#include <rawrtc/peer_connection_state.h>
+
+/*
+ * Get the corresponding name for a signaling state.
+ */
+char const* rawrtc_signaling_state_to_name(enum rawrtc_signaling_state const state) {
+ switch (state) {
+ case RAWRTC_SIGNALING_STATE_STABLE:
+ return "stable";
+ case RAWRTC_SIGNALING_STATE_HAVE_LOCAL_OFFER:
+ return "have-local-offer";
+ case RAWRTC_SIGNALING_STATE_HAVE_REMOTE_OFFER:
+ return "have-remote-offer";
+ case RAWRTC_SIGNALING_STATE_HAVE_LOCAL_PROVISIONAL_ANSWER:
+ return "have-local-pranswer";
+ case RAWRTC_SIGNALING_STATE_HAVE_REMOTE_PROVISIONAL_ANSWER:
+ return "have-remote-pranswer";
+ case RAWRTC_SIGNALING_STATE_CLOSED:
+ return "closed";
+ default:
+ return "???";
+ }
+}
+
+/*
+ * Get the corresponding name for a peer connection state.
+ */
+char const* rawrtc_peer_connection_state_to_name(enum rawrtc_peer_connection_state const state) {
+ switch (state) {
+ case RAWRTC_PEER_CONNECTION_STATE_NEW:
+ return "new";
+ case RAWRTC_PEER_CONNECTION_STATE_CONNECTING:
+ return "connecting";
+ case RAWRTC_PEER_CONNECTION_STATE_CONNECTED:
+ return "connected";
+ case RAWRTC_PEER_CONNECTION_STATE_DISCONNECTED:
+ return "disconnected";
+ case RAWRTC_PEER_CONNECTION_STATE_CLOSED:
+ return "closed";
+ case RAWRTC_PEER_CONNECTION_STATE_FAILED:
+ return "failed";
+ default:
+ return "???";
+ }
+}