Change in osmo-msc[master]: Support handling IPv6 Transport Address in Handover Request (Ack)

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.

pespin gerrit-no-reply at lists.osmocom.org
Wed Sep 9 11:51:26 UTC 2020


pespin has submitted this change. ( https://gerrit.osmocom.org/c/osmo-msc/+/19982 )

Change subject: Support handling IPv6 Transport Address in Handover Request (Ack)
......................................................................

Support handling IPv6 Transport Address in Handover Request (Ack)

Change-Id: Ie4d07826362d651cd42dc2b4e0af82368a74c774
---
M src/libmsc/ran_msg_a.c
1 file changed, 14 insertions(+), 34 deletions(-)

Approvals:
  Jenkins Builder: Verified
  fixeria: Looks good to me, approved



diff --git a/src/libmsc/ran_msg_a.c b/src/libmsc/ran_msg_a.c
index c859c22..6a33704 100644
--- a/src/libmsc/ran_msg_a.c
+++ b/src/libmsc/ran_msg_a.c
@@ -607,23 +607,13 @@
 	}
 
 	if (ie_aoip_transp_addr) {
-		do {
-			struct sockaddr_storage rtp_addr;
-			if (gsm0808_dec_aoip_trasp_addr(&rtp_addr, ie_aoip_transp_addr->val, ie_aoip_transp_addr->len) < 0) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode AoIP transport address\n");
-				break;
-			}
-			if (rtp_addr.ss_family != AF_INET) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "IE AoIP Transport Address:"
-						 " unsupported addressing scheme (only IPV4 supported)\n");
-				break;
-			}
-			if (osmo_sockaddr_str_from_sockaddr_in(&rtp_ran_local, (struct sockaddr_in*)&rtp_addr)) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode remote RTP IP address\n");
-				break;
-			}
+		struct sockaddr_storage rtp_addr;
+		if (gsm0808_dec_aoip_trasp_addr(&rtp_addr, ie_aoip_transp_addr->val, ie_aoip_transp_addr->len) < 0)
+			LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode AoIP transport address\n");
+		else if (osmo_sockaddr_str_from_sockaddr(&rtp_ran_local, &rtp_addr) < 0)
+			LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode remote RTP IP address\n");
+		else
 			r->rtp_ran_local = &rtp_ran_local;
-		} while(0);
 	}
 
 	if (ie_codec_list_msc_preferred
@@ -689,24 +679,14 @@
 	}
 
 	if (ie_aoip_transp_addr) {
-		do {
-			struct sockaddr_storage rtp_addr;
-			if (gsm0808_dec_aoip_trasp_addr(&rtp_addr, ie_aoip_transp_addr->val, ie_aoip_transp_addr->len) < 0) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode AoIP transport address\n");
-				break;
-			}
-			if (rtp_addr.ss_family != AF_INET) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "IE AoIP Transport Address:"
-						 " unsupported addressing scheme (only IPV4 supported)\n");
-				break;
-			}
-			if (osmo_sockaddr_str_from_sockaddr_in(&ran_dec_msg.handover_request_ack.remote_rtp,
-							  (struct sockaddr_in*)&rtp_addr)) {
-				LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode remote RTP IP address\n");
-				ran_dec_msg.handover_request_ack.remote_rtp = (struct osmo_sockaddr_str){};
-				break;
-			}
-		} while(0);
+		struct sockaddr_storage rtp_addr;
+		if (gsm0808_dec_aoip_trasp_addr(&rtp_addr, ie_aoip_transp_addr->val, ie_aoip_transp_addr->len) < 0) {
+			LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode AoIP transport address\n");
+		} else if (osmo_sockaddr_str_from_sockaddr(&ran_dec_msg.handover_request_ack.remote_rtp,
+							   &rtp_addr)) {
+			LOG_RAN_A_DEC_MSG(LOGL_ERROR, "unable to decode remote RTP IP address\n");
+			ran_dec_msg.handover_request_ack.remote_rtp = (struct osmo_sockaddr_str){};
+		}
 	}
 
 	if (ie_speech_codec) {

-- 
To view, visit https://gerrit.osmocom.org/c/osmo-msc/+/19982
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings

Gerrit-Project: osmo-msc
Gerrit-Branch: master
Gerrit-Change-Id: Ie4d07826362d651cd42dc2b4e0af82368a74c774
Gerrit-Change-Number: 19982
Gerrit-PatchSet: 6
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-Reviewer: Jenkins Builder
Gerrit-Reviewer: dexter <pmaier at sysmocom.de>
Gerrit-Reviewer: fixeria <vyanitskiy at sysmocom.de>
Gerrit-Reviewer: laforge <laforge at osmocom.org>
Gerrit-Reviewer: pespin <pespin at sysmocom.de>
Gerrit-MessageType: merged
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200909/58a7cf1f/attachment.htm>


More information about the gerrit-log mailing list