aboutsummaryrefslogtreecommitdiffstats
path: root/channels/chan_sip.c
diff options
context:
space:
mode:
authorrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-25 19:16:14 +0000
committerrussell <russell@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-25 19:16:14 +0000
commit4bbb855c9d79d7f2d40486bae2cee37048ab98f3 (patch)
tree1ec7fe4e1c102e32840a1d3f52a81f290dca2c37 /channels/chan_sip.c
parent3570632ce1b8d9b45f76571407cf36d760e9de66 (diff)
Merged revisions 8677 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r8677 | russell | 2006-01-25 14:14:43 -0500 (Wed, 25 Jan 2006) | 3 lines don't call ast_update_realtime with uninitialized variables if we get a registration with an expirey of 0 seconds (issue #6173) ........ git-svn-id: http://svn.digium.com/svn/asterisk/trunk@8678 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels/chan_sip.c')
-rw-r--r--channels/chan_sip.c17
1 files changed, 8 insertions, 9 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 0d5c4df8d..845769dfe 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -1596,16 +1596,15 @@ static void realtime_update_peer(const char *peername, struct sockaddr_in *sin,
{
char port[10];
char ipaddr[20];
- char regseconds[20] = "0";
+ char regseconds[20];
+ time_t nowtime;
+
+ time(&nowtime);
+ nowtime += expirey;
+ snprintf(regseconds, sizeof(regseconds), "%d", (int)nowtime); /* Expiration time */
+ ast_inet_ntoa(ipaddr, sizeof(ipaddr), sin->sin_addr);
+ snprintf(port, sizeof(port), "%d", ntohs(sin->sin_port));
- if (expirey) { /* Registration */
- time_t nowtime;
- time(&nowtime);
- nowtime += expirey;
- snprintf(regseconds, sizeof(regseconds), "%d", (int)nowtime); /* Expiration time */
- ast_inet_ntoa(ipaddr, sizeof(ipaddr), sin->sin_addr);
- snprintf(port, sizeof(port), "%d", ntohs(sin->sin_port));
- }
if (fullcontact)
ast_update_realtime("sippeers", "name", peername, "ipaddr", ipaddr, "port", port, "regseconds", regseconds, "username", username, "fullcontact", fullcontact, NULL);
else