Merged revisions 89095 via svnmerge from
authorJoshua Colp <jcolp@digium.com>
Wed, 7 Nov 2007 23:55:08 +0000 (23:55 +0000)
committerJoshua Colp <jcolp@digium.com>
Wed, 7 Nov 2007 23:55:08 +0000 (23:55 +0000)
https://origsvn.digium.com/svn/asterisk/branches/1.4

........
r89095 | file | 2007-11-07 19:53:25 -0400 (Wed, 07 Nov 2007) | 4 lines

If callerid is configured in sip.conf use that for checking the presence of an extension in the dialplan.
(closes issue #11185)
Reported by: spditner

........

git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@89096 65c4cc65-6c06-0410-ace0-fbb531ad65f3

channels/chan_sip.c

index a9b81da..adfa2ce 100644 (file)
@@ -9589,7 +9589,7 @@ static int get_destination(struct sip_pvt *p, struct sip_request *oreq)
                /* Check the dialplan for the username part of the request URI,
                   the domain will be stored in the SIPDOMAIN variable
                   Return 0 if we have a matching extension */
-               if (ast_exists_extension(NULL, p->context, uri, 1, from) ||
+               if (ast_exists_extension(NULL, p->context, uri, 1, S_OR(p->cid_num, from)) ||
                    !strcmp(uri, ast_pickup_ext())) {
                        if (!oreq)
                                ast_string_field_set(p, exten, uri);
@@ -9612,7 +9612,7 @@ static int get_destination(struct sip_pvt *p, struct sip_request *oreq)
 
        /* Return 1 for pickup extension or overlap dialling support (if we support it) */
        if((ast_test_flag(&global_flags[1], SIP_PAGE2_ALLOWOVERLAP) && 
-           ast_canmatch_extension(NULL, p->context, uri, 1, from)) ||
+           ast_canmatch_extension(NULL, p->context, uri, 1, S_OR(p->cid_num, from))) ||
            !strncmp(uri, ast_pickup_ext(), strlen(uri))) {
                return 1;
        }