Skip to content
Snippets Groups Projects
Commit d3397cd3 authored by Mark Spencer's avatar Mark Spencer
Browse files

Don't copmile in the no-RTP checksum stuff for non-Linux (bug #2089)

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3480 65c4cc65-6c06-0410-ace0-fbb531ad65f3
parent f8594ac3
No related branches found
No related tags found
No related merge requests found
......@@ -52,7 +52,9 @@ static int dtmftimeout = 3000; /* 3000 samples */
static int rtpstart = 0;
static int rtpend = 0;
#ifdef SO_NO_CHECK
static int checksums = 1;
#endif
/* The value of each payload format mapping: */
struct rtpPayloadType {
......@@ -766,9 +768,11 @@ static int rtp_socket(void)
if (s > -1) {
flags = fcntl(s, F_GETFL);
fcntl(s, F_SETFL, flags | O_NONBLOCK);
#ifdef SO_NO_CHECK
if (checksums) {
setsockopt(s, SOL_SOCKET, SO_NO_CHECK, &checksums, sizeof(checksums));
}
#endif
}
return s;
}
......@@ -1494,7 +1498,9 @@ void ast_rtp_reload(void)
char *s;
rtpstart = 5000;
rtpend = 31000;
#ifdef SO_NO_CHECK
checksums = 1;
#endif
cfg = ast_load("rtp.conf");
if (cfg) {
if ((s = ast_variable_retrieve(cfg, "general", "rtpstart"))) {
......@@ -1512,10 +1518,15 @@ void ast_rtp_reload(void)
rtpend = 65535;
}
if ((s = ast_variable_retrieve(cfg, "general", "rtpchecksums"))) {
#ifdef SO_NO_CHECK
if (ast_true(s))
checksums = 1;
else
checksums = 0;
#else
if (ast_true(s))
ast_log(LOG_WARNING, "Disabling RTP checksums is not supported on this operating system!\n");
#endif
}
ast_destroy(cfg);
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment