aboutsummaryrefslogtreecommitdiffstats
path: root/channels
diff options
context:
space:
mode:
authoroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-27 08:02:16 +0000
committeroej <oej@f38db490-d61c-443f-a65b-d21fe96a405b>2006-01-27 08:02:16 +0000
commitdca5f1021a1adf61d39c9b4743fdf8f4c29bae58 (patch)
treeb90e4636dd959b9d7bc2e5b4b21b4f7cbc32886e /channels
parent3e7c0ec6fb61b8629373807aa3e8e2a414ff2349 (diff)
Issue 6362 - Register without Contact: and Expires: fails (reporter: op)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.2@8785 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_sip.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/channels/chan_sip.c b/channels/chan_sip.c
index 55faa79ec..efb40f8d6 100644
--- a/channels/chan_sip.c
+++ b/channels/chan_sip.c
@@ -5818,13 +5818,11 @@ static enum parse_register_result parse_register_contact(struct sip_pvt *pvt, st
it
*/
if (ast_strlen_zero(c) && ast_strlen_zero(expires)) {
+ /* If we have an active registration, tell them when the registration is going to expire */
if ((p->expire > -1) && !ast_strlen_zero(p->fullcontact)) {
- /* tell them when the registration is going to expire */
pvt->expiry = ast_sched_when(sched, p->expire);
- return PARSE_REGISTER_QUERY;
- } else {
- return PARSE_REGISTER_FAILED;
- }
+ }
+ return PARSE_REGISTER_QUERY;
} else if (!strcasecmp(c, "*") || !expiry) { /* Unregister this peer */
/* This means remove all registrations and return OK */
memset(&p->addr, 0, sizeof(p->addr));