From 1e477ed10f1b8f8c81c61b80f83d338d335154e1 Mon Sep 17 00:00:00 2001 From: Mark Spencer <markster@digium.com> Date: Thu, 31 Mar 2005 19:09:48 +0000 Subject: [PATCH] Fix RTP checksums config option (bug #3908 with minor mods) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@5322 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- rtp.c | 18 +++++++----------- 1 file changed, 7 insertions(+), 11 deletions(-) diff --git a/rtp.c b/rtp.c index d5c6b99bc9..cfcfc1c3db 100755 --- a/rtp.c +++ b/rtp.c @@ -56,7 +56,7 @@ static int rtpend = 0; static int rtpdebug = 0; /* Are we debugging? */ static struct sockaddr_in rtpdebugaddr; /* Debug packets to/from this host */ #ifdef SO_NO_CHECK -static int checksums = 1; +static int nochecksums = 0; #endif /* The value of each payload format mapping: */ @@ -857,9 +857,8 @@ static int rtp_socket(void) 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)); - } + if (nochecksums) + setsockopt(s, SOL_SOCKET, SO_NO_CHECK, &nochecksums, sizeof(nochecksums)); #endif } return s; @@ -1743,9 +1742,6 @@ void ast_rtp_reload(void) rtpstart = 5000; rtpend = 31000; -#ifdef SO_NO_CHECK - checksums = 1; -#endif cfg = ast_config_load("rtp.conf"); if (cfg) { if ((s = ast_variable_retrieve(cfg, "general", "rtpstart"))) { @@ -1764,12 +1760,12 @@ void ast_rtp_reload(void) } if ((s = ast_variable_retrieve(cfg, "general", "rtpchecksums"))) { #ifdef SO_NO_CHECK - if (ast_true(s)) - checksums = 1; + if (ast_false(s)) + nochecksums = 1; else - checksums = 0; + nochecksums = 0; #else - if (ast_true(s)) + if (ast_false(s)) ast_log(LOG_WARNING, "Disabling RTP checksums is not supported on this operating system!\n"); #endif } -- GitLab