summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHolger Hans Peter Freyther <holger@moiji-mobile.com>2015-01-21 12:58:13 +0100
committerHolger Hans Peter Freyther <holger@moiji-mobile.com>2015-01-21 12:58:13 +0100
commitaa037de859f4f7ef8b789695ecd401561e285c6e (patch)
tree6af87965483e87ed49f22ebd05ef59d0a029f710
parentb7ae3e742fdd0ec18b0aac40c66233da80d42bee (diff)
parent9be675ea52c2da4b7e2de3339e3d600efc8a853b (diff)
Merge remote-tracking branch 'origin/master' into hfreyther/packages
Conflicts: openbsc/include/openbsc/gprs_sgsn.h
-rw-r--r--openbsc/include/openbsc/mgcp_internal.h2
-rw-r--r--openbsc/src/libmgcp/mgcp_network.c6
-rw-r--r--openbsc/src/libmgcp/mgcp_osmux.c1
-rw-r--r--openbsc/src/libmgcp/mgcp_vty.c2
4 files changed, 7 insertions, 4 deletions
diff --git a/openbsc/include/openbsc/mgcp_internal.h b/openbsc/include/openbsc/mgcp_internal.h
index 434b46c1f..6778064b3 100644
--- a/openbsc/include/openbsc/mgcp_internal.h
+++ b/openbsc/include/openbsc/mgcp_internal.h
@@ -253,6 +253,8 @@ void mgcp_rtp_annex_count(struct mgcp_endpoint *endp, struct mgcp_rtp_state *sta
const uint16_t seq, const int32_t transit,
const uint32_t ssrc);
+int mgcp_set_ip_tos(int fd, int tos);
+
enum {
MGCP_DEST_NET = 0,
MGCP_DEST_BTS,
diff --git a/openbsc/src/libmgcp/mgcp_network.c b/openbsc/src/libmgcp/mgcp_network.c
index 37fc59aec..c3f43dd39 100644
--- a/openbsc/src/libmgcp/mgcp_network.c
+++ b/openbsc/src/libmgcp/mgcp_network.c
@@ -901,7 +901,7 @@ int mgcp_create_bind(const char *source_addr, struct osmo_fd *fd, int port)
return 0;
}
-static int set_ip_tos(int fd, int tos)
+int mgcp_set_ip_tos(int fd, int tos)
{
int ret;
ret = setsockopt(fd, IPPROTO_IP, IP_TOS,
@@ -925,8 +925,8 @@ static int bind_rtp(struct mgcp_config *cfg, struct mgcp_rtp_end *rtp_end, int e
goto cleanup1;
}
- set_ip_tos(rtp_end->rtp.fd, cfg->endp_dscp);
- set_ip_tos(rtp_end->rtcp.fd, cfg->endp_dscp);
+ mgcp_set_ip_tos(rtp_end->rtp.fd, cfg->endp_dscp);
+ mgcp_set_ip_tos(rtp_end->rtcp.fd, cfg->endp_dscp);
rtp_end->rtp.when = BSC_FD_READ;
if (osmo_fd_register(&rtp_end->rtp) != 0) {
diff --git a/openbsc/src/libmgcp/mgcp_osmux.c b/openbsc/src/libmgcp/mgcp_osmux.c
index d5e671d06..7f61173a1 100644
--- a/openbsc/src/libmgcp/mgcp_osmux.c
+++ b/openbsc/src/libmgcp/mgcp_osmux.c
@@ -420,6 +420,7 @@ int osmux_init(int role, struct mgcp_config *cfg)
LOGP(DMGCP, LOGL_ERROR, "cannot bind OSMUX socket\n");
return ret;
}
+ mgcp_set_ip_tos(osmux_fd.fd, cfg->endp_dscp);
osmux_fd.when |= BSC_FD_READ;
ret = osmo_fd_register(&osmux_fd);
diff --git a/openbsc/src/libmgcp/mgcp_vty.c b/openbsc/src/libmgcp/mgcp_vty.c
index 5124ca670..3d99c83b7 100644
--- a/openbsc/src/libmgcp/mgcp_vty.c
+++ b/openbsc/src/libmgcp/mgcp_vty.c
@@ -378,7 +378,7 @@ DEFUN(cfg_mgcp_rtp_ip_dscp,
cfg_mgcp_rtp_ip_dscp_cmd,
"rtp ip-dscp <0-255>",
RTP_STR
- "Apply IP_TOS to the audio stream\n" "The DSCP value\n")
+ "Apply IP_TOS to the audio stream (including Osmux)\n" "The DSCP value\n")
{
int dscp = atoi(argv[0]);
g_cfg->endp_dscp = dscp;