chan_sip: DiffServ/ToS not only on UDP but also on TCP and TLS sockets.

ASTERISK-27195
Reported by: Joshua Roys

Change-Id: I6e72ecb874200dec7a3865c7babaf5ac0d3101de
This commit is contained in:
Alexander Traud
2020-04-15 08:20:46 +02:00
committed by George Joseph
parent 39f5be81a3
commit 3b4be152d5

View File

@@ -29696,6 +29696,8 @@ static int sip_prepare_socket(struct sip_pvt *p)
goto create_tcptls_session_fail;
}
ast_set_qos(s->fd, global_tos_sip, global_cos_sip, "SIP");
return s->fd;
create_tcptls_session_fail:
@@ -33510,6 +33512,7 @@ static int reload_config(enum channelreloadreason reason)
if (setsockopt(sip_tcp_desc.accept_fd, SOL_SOCKET, SO_KEEPALIVE, &flags, sizeof(flags))) {
ast_log(LOG_ERROR, "Error enabling TCP keep-alive on sip socket: %s\n", strerror(errno));
}
ast_set_qos(sip_tcp_desc.accept_fd, global_tos_sip, global_cos_sip, "SIP");
}
}
@@ -33537,6 +33540,7 @@ static int reload_config(enum channelreloadreason reason)
ast_log(LOG_ERROR, "Error enabling TCP keep-alive on sip socket: %s\n", strerror(errno));
sip_tls_desc.tls_cfg = NULL;
}
ast_set_qos(sip_tls_desc.accept_fd, global_tos_sip, global_cos_sip, "SIP");
}
} else if (sip_tls_desc.tls_cfg->enabled) {
sip_tls_desc.tls_cfg = NULL;