aboutsummaryrefslogtreecommitdiffstats
path: root/src/common/rsl.c
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2013-06-30 15:27:10 +0200
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2013-10-06 15:50:36 +0200
commit359fb8caf417570856ca61d6ff90df1fc452d659 (patch)
treefa52c08a470319a3d6a9a6dcf7b359290989c890 /src/common/rsl.c
parentb77ae3bc601f9c70c6f9d41d70b063a769506322 (diff)
abis: Use OML remote (BSC) address if RSL CONNECT contains no IP
This introduces a new get_signlink_remote_ip() function whcih we also use in the RSL code to determine the RTP remote address if the CRCX/MDCX contains no remote IP address IE.
Diffstat (limited to 'src/common/rsl.c')
-rw-r--r--src/common/rsl.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/src/common/rsl.c b/src/common/rsl.c
index d17d4e8b..0bcb6202 100644
--- a/src/common/rsl.c
+++ b/src/common/rsl.c
@@ -1364,12 +1364,8 @@ static int rsl_rx_ipac_XXcx(struct msgb *msg)
if (connect_ip == 0) {
struct e1inp_sign_link *sign_link =
lchan->ts->trx->rsl_link;
- int rsl_fd = sign_link->ts->driver.ipaccess.fd.fd;
- struct sockaddr_in sin;
- socklen_t slen = sizeof(sin);
- getpeername(rsl_fd, (struct sockaddr *)&sin, &slen);
- ia = sin.sin_addr;
+ ia.s_addr = htonl(get_signlink_remote_ip(sign_link));
} else
ia.s_addr = connect_ip;
rc = osmo_rtp_socket_connect(lchan->abis_ip.rtp_socket,