diff options
author | David Vossel <dvossel@digium.com> | 2010-02-15 15:45:02 +0000 |
---|---|---|
committer | David Vossel <dvossel@digium.com> | 2010-02-15 15:45:02 +0000 |
commit | 2003243947d6cc11141a264f7b04b57b35b0cc00 (patch) | |
tree | 72b0e2d48f3f92adf9294911b59271a48180b958 /channels/sip/include/sip_utils.h | |
parent | 7d5d0311c1d08f98424764b3c392f214cddc52d2 (diff) |
chan_sip parse code refactoring plus two new unit tests
Code Refactoring Changes
- read_to_parts() moved to reqresp_parser.c and has been renamed as
get_name_and_number()
- get_in_brackets() moved to reqresp_parser.c
- find_closing_quotes() added to sip_utils.h
Logic Changes
- get_name_and_number() now uses parse_uri() and get_calleridname()
for parsing. Before this change only names within quotes were
found, when names not within quotes are possible.
New Unit Tests
-sip_get_name_and_number_test
-sip_get_in_brackets_test
(closes issue #16707)
Reported by: Nick_Lewis
Patches:
issue16706.diff uploaded by dvossel (license 671)
Review: https://reviewboard.asterisk.org/r/499/
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@246627 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels/sip/include/sip_utils.h')
-rw-r--r-- | channels/sip/include/sip_utils.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/channels/sip/include/sip_utils.h b/channels/sip/include/sip_utils.h index 86eb81933..549f9392f 100644 --- a/channels/sip/include/sip_utils.h +++ b/channels/sip/include/sip_utils.h @@ -33,4 +33,11 @@ */ unsigned int port_str2int(const char *pt, unsigned int standard); +/*! \brief Locate closing quote in a string, skipping escaped quotes. + * optionally with a limit on the search. + * start must be past the first quote. + */ +const char *find_closing_quote(const char *start, const char *lim); + + #endif |