summaryrefslogtreecommitdiff
path: root/main
AgeCommit message (Collapse)Author
2010-02-09Various updates to the unit test API.Russell Bryant
1) It occurred to me that the difference in usage between the error ast_str and the ast_test_update_status() usage has turned out to be a bit ambiguous in practice. In a lot of cases, the same message was being sent to both. In other cases, it was only sent to one or the other. My opinion now is that in every case, I think it makes sense to do both; we should output it to the CLI as well as save it off for logging purposes. This change results in most of the changes in this diff, since it required changes to all existing unit tests. It also allowed for some simplifications of unit test API implementation code. 2) Update ast_test_status_update() to include the file, function, and line number for the code providing the update. 3) There are some formatting tweaks here and there. Hopefully they aren't too distracting for code review purposes. Reviewboard's diff viewer seems to do a pretty good job of pointing out when something is a whitespace change. 4) I moved the md5_test and sha1_test into the test_utils module. It seemed like a better approach since these tests are so tiny. 5) I changed the number of nodes used in heap_test_2 from 1 million to 100 thousand. The only reason for this was to reduce the time it took for this test to run. 6) Remove an unused function prototype that was at the bottom of utils.h. 7) Simplify test_insert() using the LIST_INSERT_SORTALPHA() macro. The one minor difference in behavior is that it no longer checks for a test registered with the same name. 8) Expand the code in test_alloc() to provide specific error messages for each failure case, to clearly inform developers if they forget to set the name, summary, description, etc. 9) Tweak the output of the "test show registered" CLI command. I swapped the name and category to have the category first. It seemed more natural since that is the sort key. 10) Don't output the status ast_str in the "test show results" CLI command. This is going to tend to be pretty verbose, so just leave that for the detailed test logs (test generate results). Review: https://reviewboard.asterisk.org/r/493/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-08Fix return value of get_ie_str() and get_ie_str_hash() for non-existent IE.Russell Bryant
I found this bug while developing a unit test for event allocation. Testing is awesome. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245624 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-08Use memmove() instead of memcpy() for a case where the buffers overlap.Russell Bryant
Once again, valgrind is freaking awesome. That is all. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-08Actually use _ASTLDFLAGS in the main/ and channels/ Makefiles.Tilghman Lesher
They were previously passed correctly, but they simply weren't used. This caused issues with various platforms whose builds needed to pass special linker flags via the configure script. (closes issue #16596) Reported by: pprindeville Patches: asterisk-1.6-astldflags.patch uploaded by pprindeville (license 347) Tested by: tilghman git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245578 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-08Merged revisions 245496 via svnmerge from Jason Parker
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r245496 | qwell | 2010-02-08 14:39:50 -0600 (Mon, 08 Feb 2010) | 4 lines Remove reference of documentation in source directory. People don't always build Asterisk from source (distro packages, anybody?). ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245497 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-07Remove an extra space.Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245268 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-05fixes astobj2 unlinking of multiple objects when OBJ_MULTIPLE was disabledDavid Vossel
When OBJ_MULTIPLE was off but OBJ_UNLINK was on, all the items in a bucket were being unlinked instead of just the first match. This fixes that. Review: https://reviewboard.asterisk.org/r/490/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245147 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-05Merge tests that verify the same thing. (Oops.)Tilghman Lesher
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@245046 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-05Merged revisions 244926 via svnmerge from Sean Bright
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r244926 | seanbright | 2010-02-05 12:03:35 -0500 (Fri, 05 Feb 2010) | 1 line Update main copyright date. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244927 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-05fixes memory leak in astobj2 testDavid Vossel
ao2_iterator_destroy was not being used on the iterator during the test. This resulted in the container never actually being destroyed. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244887 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-04Try to make ast_format_str_reduce fail...Tilghman Lesher
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244768 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-04fix truncated format string in 'test show registered'David Vossel
When using the 'test show registered' cli command the 'Test Results' category was truncating the last few characters making it look like 'Test Resul'. I also expanded other parts of the format to better represent how long function names and categories will likely be. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244688 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-03Add some additional option support for non-default parking lots.Jeff Peeler
The options are: parkedcallparking, parkedcallhangup, parkedcallrecording, and parkedcalltransfers. Previously these options were only available for the default parking lot. (closes issue #16641) Reported by: bluecrow76 Patches: asterisk-1.6.2.1-features.c.diff uploaded by bluecrow76 (license 270) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-03Initialize counters in ast_sched_report so that resulting data is not bogus.Mark Michelson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-02fixes crash during T.38 negotiation caused by invalid or missing ↵David Vossel
FaxMaxDatagram field AST-2010-001 (closes issue #16634) Reported by: krn (closes issue #16724) Reported by: barthpbx (closes issue #16517) Reported by: bklang (closes issue #16485) Reported by: elsto git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244443 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-02-01Merged revisions 244070 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r244070 | tilghman | 2010-02-01 11:46:31 -0600 (Mon, 01 Feb 2010) | 16 lines Revert previous chan_local fix (r236981) and fix instead by destroying expired frames in the queue. (closes issue #16525) Reported by: kobaz Patches: 20100126__issue16525.diff.txt uploaded by tilghman (license 14) 20100129__issue16525__1.6.0.diff.txt uploaded by tilghman (license 14) Tested by: kobaz, atis (closes issue #16581) Reported by: ZX81 (closes issue #16681) Reported by: alexr1 ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@244071 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-28Optimization to manager events.Jeff Peeler
When potentially sending manager events, return immediately if there are no sessions or hooks. Also, avoid locking the hooks list if it is empty. (issue #16455) Reported by: atis Patches: manager_hooks_trunk.patch uploaded by atis (license 242) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243986 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-27Add new option to asterisk.conf (lockconfdir) to protect conf dir during reloadsJeff Peeler
(closes issue #16358) Reported by: raarts Patches: lockconfdir.diff uploaded by raarts (license 937) modified by me git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-27Merged revisions 243486 via svnmerge from Mark Michelson
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r243486 | mmichelson | 2010-01-27 12:06:43 -0600 (Wed, 27 Jan 2010) | 3 lines Use a safe list traversal while checking for duplicate vars in pbx_builtin_setvar_helper. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243487 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-26Merged revisions 243390 via svnmerge from David Vossel
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r243390 | dvossel | 2010-01-26 17:55:49 -0600 (Tue, 26 Jan 2010) | 9 lines fixes bug with channel receiving wrong privileges after call parking (closes issue #16429) Reported by: Yasuhiro Konishi Patches: features.c.diff uploaded by Yasuhiro Konishi (license 947) Tested by: dvossel ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-26Merged revisions 243258 via svnmerge from Jeff Peeler
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r243258 | jpeeler | 2010-01-26 12:19:10 -0600 (Tue, 26 Jan 2010) | 2 lines Remove unnecessary code in ast_read as issue 16058 has been fully solved now. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243266 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-26Fix crash resulting from frames with invalid data pointers.Jeff Peeler
In ast_frdup the frame data union does not get set to point to malloced memory if the datalen is zero, so make sure to handle the same case in ast_frisolate appropriately. (closes issue #16058) Reported by: atis Patches: bug16058-fix.patch uploaded by jpeeler (license 325) Tested by: atis git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243244 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-26modify 'test show registered' cli output formatDavid Vossel
In order to improve readability, the output from 'test show registered' has been modified to truncate fields to fit within the format output if they are over a certain length. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243242 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-26RFC compliant uri and display-name encode/decodeDavid Vossel
1. URI Encoding This patch changes ast_uri_encode()'s behavior when doreserved is enabled. Previously when doreserved was enabled only a small set of reserved characters were encoded. This set was comprised primarily of the reserved characters defined in RFC3261 section 25.1, but contained other characters as well. Rather than only escaping the reserved set, doreserved now escapes all characters not within the unreserved set as defined by RFC 3261 and RFC 2396. Also, the 'doreserved' variable has been renamed to 'do_special_char' in attempts to avoid confusion. When doreserve is not enabled, the previous logic of only encoding the characters <= 0X1F and > 0X7f remains, except for the '%' character, which must always be encoded as it signifies a HEX escaped character during the decode process. 2. URI Decoding: Break up URI before decode. In chan_sip.c ast_uri_decode is called on the entire URI instead of it's individual parts after it is parsed. This is not good as ast_uri_decode can introduce special characters back into the URI which can mess up parsing. This patch resolves this by not decoding a URI until parsing is completely done. There are many instances where we check to see if pedantic checking is enabled before we decode a URI. In these cases a new macro, SIP_PEDANTIC_DECODE, is used on the individual parsed segments of the URI rather than constantly putting if (pedantic) { decode() } checks everywhere in the code. In the areas where ast_uri_decode is not dependent upon pedantic checking this macro is not used, but decoding is still moved to each individual part of the URI. The only behavior that should change from this patch is the time at which decoding occurs. Since I had to look over every place URI parsing occurs to create this patch, I found several places where we use duplicate code for parsing. To consolidate the code, those areas have updated to use the parse_uri() function where possible. 3. SIP display-name decoding according to RFC3261 section 25. To properly decode the display-name portion of a FROM header, chan_sip's get_calleridname() function required a complete re-write. More information about this change can be found in the comments at the beginning of this function. 4. Unit Tests. Unit tests for ast_uri_encode, ast_uri_decode, and get_calleridname() have been written. This involved the addition of the test_utils.c file for testing the utils api. (closes issue #16299) Reported by: wdoekes Patches: astsvn-16299-get_calleridname.diff uploaded by wdoekes (license 717) get_calleridname_rewrite.diff uploaded by dvossel (license 671) Tested by: wdoekes, dvossel, Nick_Lewis Review: https://reviewboard.asterisk.org/r/469/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@243200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Merged revisions 242969 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r242969 | tilghman | 2010-01-25 15:50:22 -0600 (Mon, 25 Jan 2010) | 2 lines Err, and use the new menuselect define, too. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242971 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Change api for pbx_builtin_setvar to actually return error code if a ↵Olle Johansson
function can't be written to. This patch removes code that was duplicated from pbx.c to manager.c in order to prevent API change in released versions of Asterisk. There are propably also other places that would benefit from reading the return code and react if a function returns error codes on writing a value into it. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242919 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Merged revisions 242850 via svnmerge from Olle Johansson
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r242850 | oej | 2010-01-25 21:03:38 +0100 (Mån, 25 Jan 2010) | 2 lines Report error when writing to functions returns error in AMI setvar action ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Merged revisions 242852 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r242852 | tilghman | 2010-01-25 14:15:45 -0600 (Mon, 25 Jan 2010) | 2 lines Restore FreeBSD to able-to-compile-ish-mode ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242857 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Merged revisions 242728 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r242728 | tilghman | 2010-01-24 23:42:22 -0600 (Sun, 24 Jan 2010) | 2 lines Buildbot pointed out an error (thanks, buildbot!) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-25Merged revisions 242683 via svnmerge from Tilghman Lesher
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r242683 | tilghman | 2010-01-24 23:13:28 -0600 (Sun, 24 Jan 2010) | 2 lines Make the build of the Asterisk expression parser match that of the AEL parser. ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-22Update the doxygenification of some comments.Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242186 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-21Add missing argument to ast_calloc calls.Mark Michelson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-21Make sure we initialize the ast_ha structure with ast_callocOlle Johansson
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@242043 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-21Point to a useful reference on the XML output format.Russell Bryant
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241856 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-21Modify test results XML format to match the JUnit format.Russell Bryant
When this code was developed, we came up with our own XML format for the test output. I have since started looking at integration with other tools, namely continuous integration frameworks, and this format seems to be supported across a number of applications. With these changes in place, I was able to get Atlassian Bamboo to interpret the test results. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241855 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-20Add Calling and Called Subaddress to CDR recordAlec L Davis
Requires 'callingsubaddr' and 'calledsubaddr' fields in backend cdr. (closes issue #16600) Reported by: alecdavis Patches: cdr_subaddr.diff.txt uploaded by alecdavis (license 585) Tested by: alecdavis Review: https://reviewboard.asterisk.org/r/460/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241581 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-20Update CDR variables as pbx startsAlec L Davis
Allows CDR variables added in cdr.c:set_one_cid to become visable during the call, by executing ast_cdr_update() early in __ast_pbx run. Reverts sig_pri changes in trunk that are specific to isdn technology only. (closes issue #16638) Reported by: alecdavis Patches: cdr_update.diff3.txt uploaded by alecdavis (license 585) Tested by: alecdavis git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-19Initialize data on the stack so that Park doesn't interpret random arguments.Jeff Peeler
passdata was only being set in pbx_substitue_variables when arguments were passed. (closes issue #16406) (closes issue #16586) Reported by: DLNoah Patches: bug16586v2.patch uploaded by jpeeler (license 325) Tested by: DLNoah git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241366 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-19Create iterative method for querying SRV results, and use that for finding ↵Tilghman Lesher
AGI servers. (closes issue #14775) Reported by: _brent_ Patches: 20091215__issue14775.diff.txt uploaded by tilghman (license 14) hagi-5.patch uploaded by brent (license 388) Tested by: _brent_ Reviewboard: https://reviewboard.asterisk.org/r/378/ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241188 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-18Extend max call limit duration from 24.8 days to 292+ million years.Jeff Peeler
If the limit was set past MAX_INT upon answering, the call was immediately hung up due to overflow from the return of ast_tvdiff_ms (in ast_check_hangup). The time calculation functions ast_tvdiff_sec and ast_tvdiff_ms have been changed to return an int64_t to prevent overflow. Also the reporter suggested adding a message indicating the reason for the call hanging up. Given that the new limit is so much higher, the message (which would only really be useful in the overflow scenario) has been made a debug message only. (closes issue #16006) Reported by: viraptor git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241143 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-18Fix an RTP instance allocation failure on Solaris.Jason Parker
(closes issue #16543) Reported by: crjw Patches: rtp_sin_family.patch uploaded by crjw (license 963) Tested by: crjw, qwell git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241098 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-18Merged revisions 241015 via svnmerge from Sean Bright
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r241015 | seanbright | 2010-01-18 14:54:19 -0500 (Mon, 18 Jan 2010) | 12 lines Plug a memory leak when reading configs with their comments. While reading through configuration files with the intent of returning their full contents (comments specifically) we allocated some memory and then forgot to free it. This doesn't fix 16554 but clears up a leak I had in the lab. (issue #16554) Reported by: mav3rick Patches: issue16554_20100118.patch uploaded by seanbright (license 71) Tested by: seanbright ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@241016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-17Avoid a crash on Solaris when running 'core show functions.'Sean Bright
(closes issue #16309) Reported by: asgaroth git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15Err, oops, it was already the way I intended.Tilghman Lesher
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240629 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15The previous attempt at using a pipe to guarantee astcanary shutdown did not ↵Tilghman Lesher
work. We're revisiting the previous patch, albeit with a method that overcomes the prior criticism that it was not POSIX-compliant. (closes issue #16602) Reported by: frawd Patches: 20100114__issue16602.diff.txt uploaded by tilghman (license 14) Tested by: frawd git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240499 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15Add pickup event to AMI. Also, fix AMI documentation.Tilghman Lesher
(closes issue #16431) Reported by: syspert Patches: 20100112__issue16431.diff.txt uploaded by tilghman (license 14) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240421 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15Make sure to set owner_line, ownder_func, and owner_file in ↵Mark Michelson
ast_calloc_with_stringfields. Asterisk would crash on startup if MALLOC_DEBUG were set in menuselect. This is because the manager action UpdateConfig had to resize its string field allocation to set the description. When the resize occurred, ast_copy_string would crash because we were attempting to copy a string from a NULL pointer. Setting the strings initially makes the code much less crashy. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240420 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15Ensure payload type is properly checked when comparing against cached events.Russell Bryant
(closes issue #16607) Reported by: ddv2005 Patches: event.patch uploaded by ddv2005 (license 769) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240411 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-15Convert a few places to use ast_calloc_with_stringfields where applicable.Sean Bright
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240368 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-01-14Fix broken call pickupJeff Peeler
The problem was the OUTGOING flag was not getting set properly on the channel, resulting in pickup failing as ast_read thought the call was inbound. Refer to 170393 for a more verbose description as this is the same exact change. (closes issue #16539) Reported by: syspert Patches: bug16539.patch uploaded by jpeeler (license 325) Tested by: syspert git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@240179 65c4cc65-6c06-0410-ace0-fbb531ad65f3