osmo_rtp_socket_fdreg(): Check return value of osmo_fd_register()

Change-Id: I4969e0a9e7109d426066e6c2b80ed44c396b65b5
Fixes: Coverity CID 57631
diff --git a/src/trau/osmo_ortp.c b/src/trau/osmo_ortp.c
index e7c6fc4..51829d1 100644
--- a/src/trau/osmo_ortp.c
+++ b/src/trau/osmo_ortp.c
@@ -211,6 +211,8 @@
 
 static int osmo_rtp_socket_fdreg(struct osmo_rtp_socket *rs)
 {
+	int rc;
+
 	rs->rtp_bfd.fd = rtp_session_get_rtp_socket(rs->sess);
 	rs->rtcp_bfd.fd = rtp_session_get_rtcp_socket(rs->sess);
 	rs->rtp_bfd.when = rs->rtcp_bfd.when = BSC_FD_READ;
@@ -218,8 +220,15 @@
 	rs->rtp_bfd.cb = osmo_rtp_fd_cb;
 	rs->rtcp_bfd.cb = osmo_rtcp_fd_cb;
 
-	osmo_fd_register(&rs->rtp_bfd);
-	osmo_fd_register(&rs->rtcp_bfd);
+	rc = osmo_fd_register(&rs->rtp_bfd);
+	if (rc < 0)
+		return rc;
+
+	rc = osmo_fd_register(&rs->rtcp_bfd);
+	if (rc < 0) {
+		osmo_fd_unregister(&rs->rtp_bfd);
+		return rc;
+	}
 
 	return 0;
 }