Compare commits

...

466 Commits

Author SHA1 Message Date
Kevin P. Fleming
68cdab7e54 importing files for 1.0.11.1 release
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.0.11.1@32599 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 16:16:08 +00:00
Kevin P. Fleming
3b3f456199 Creating tag for the release of asterisk-1.0.11.1
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/1.0.11.1@32598 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 16:13:39 +00:00
Kevin P. Fleming
e132aba5c9 correct yesterday's security fix so that it doesn't improperly reject valid video frames
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@32565 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-06 15:38:44 +00:00
Russell Bryant
4196243583 backport the chan_iax2 security fix from 1.2 and trunk ...
ensure that the received number of bytes is included in all IAX2 incoming 
frame analysis checks (fixes a known vulnerability)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@32428 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-06-05 22:03:16 +00:00
Russell Bryant
9ce061aa3f fix memory leak with DelayedRetry (issue #6157)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7914 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2006-01-09 22:03:42 +00:00
Russell Bryant
168ed954eb check array bounds when parsing arguments to AGI (issue #5868)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7558 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-20 20:23:20 +00:00
Russell Bryant
0d1660a369 properly reset the 'next' pointer when duplicating the cdr (issue #5921)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7467 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-12-13 07:40:57 +00:00
Kevin P. Fleming
ebb8253d2f remove extraneous svn:executable properties
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7221 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:24:39 +00:00
Kevin P. Fleming
11f81ad761 remove remaining .cvsignore files
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-29 18:09:49 +00:00
Kevin P. Fleming
ad8786f355 branch renames
remove unneeded branches


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.0@7199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-27 16:04:52 +00:00
Russell Bryant
17fd431b31 remove misleading message
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@7179 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 17:58:38 +00:00
Russell Bryant
45c9175c77 re-add explicit poll support for Darwin
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@7177 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 16:53:51 +00:00
Russell Bryant
8355d829bb re-add the CHANGES file as ChangeLog since that's how it was for all of the
other 1.0 releases


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@7176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 16:37:10 +00:00
Russell Bryant
b14b81d8b4 remove the CHANGES file from v1-0
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@7175 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 16:27:55 +00:00
Admin Commit
e875a17b48 This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@7173 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-21 15:09:31 +00:00
Russell Bryant
7f9f2f6543 add a couple missing queue_log entries (issue #5422)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-04 05:44:06 +00:00
Russell Bryant
b2cfc35315 Remove ancient copy/paste error (issue #5541)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6921 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-01 01:32:58 +00:00
Russell Bryant
31c57904fd Actually write audio to file in get_voice (issue #5547)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6920 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-01 01:28:43 +00:00
Russell Bryant
0ead801f25 prevent possible seg fault (issue #5502)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6919 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-11-01 00:57:42 +00:00
Russell Bryant
009b812d76 removed unused variable (issue #5455)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6840 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-21 17:42:53 +00:00
Russell Bryant
a0d4959fc5 add hello world prompt to 1.0 for Jared
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6810 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-17 22:23:52 +00:00
Admin Commit
11c11d27bc This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-17 22:23:52 +00:00
Russell Bryant
6b36952664 correctly fix build issues on Mac OSX Tiger by using a more generic means
for determining wheter poll and dlfcn functionality needs to be provided


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6707 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-01 01:58:20 +00:00
Russell Bryant
afdd1c5512 fix 'say phonetic' (issue #5268)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6706 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-10-01 01:37:14 +00:00
Russell Bryant
ac303de4aa fix incorrect CLI tab completion (issue #5041)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-25 17:26:52 +00:00
Russell Bryant
508b3ba688 Null out call number on release complete when number is unallocated (bug #4633)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6646 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-25 17:24:53 +00:00
Russell Bryant
75b0c4445a Fix cut/paste error (issue #5282)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6637 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-24 21:24:35 +00:00
Russell Bryant
2f5ced421e Fix CLI memory leak (issue #5035)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6636 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-24 21:19:42 +00:00
Russell Bryant
d09714e12b ensure that user events are correctly identified (issue #5200)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6572 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-13 23:40:00 +00:00
Russell Bryant
52171d4c26 fix crash on amd64 (issue #5210)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6570 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-13 23:31:57 +00:00
Russell Bryant
8bd93a96ac don't allow call waiting during the initial ringing (issue #5188)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6569 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-09-13 23:22:18 +00:00
Russell Bryant
5a80b57ccf backport "Fix accidental RTCP/RTP linkage"
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6419 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-26 16:56:07 +00:00
Russell Bryant
b2fb3d501c spell them words cowrecktly (issue #4964)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6418 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-26 16:31:36 +00:00
Russell Bryant
6cf8ee01a6 ensure buffers are large enough for ENUMLookup (issue #4943)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6417 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-26 16:26:37 +00:00
Russell Bryant
153119a7bc make message more gooder (issue #4979)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-26 16:20:51 +00:00
Russell Bryant
9b8ba163f2 fix format string (issue #4945)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6414 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-26 15:54:25 +00:00
Russell Bryant
bfac0241be fix crash related to saving a changed password (bug #4976)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6392 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-24 15:39:25 +00:00
Kevin P. Fleming
09f5f15a72 ensure buffer is adequately sized for complex frames (issue #4974)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6387 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-23 17:42:54 +00:00
Matthew Fredrickson
84957104b2 Commit backport of fix to DTMF detection during overlap mode
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-22 16:47:22 +00:00
Russell Bryant
312008513e revert SIGHUP patch to restore original behavior for 1.0 (bug #4854)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-22 05:47:37 +00:00
Russell Bryant
08630905fa Fix poll error condition causing memory corruption (bug #4915)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6311 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-08 18:58:19 +00:00
Russell Bryant
83ef83a5f8 terminate 'send text' with a newline (bug #4632)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6310 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-08 18:15:32 +00:00
Russell Bryant
2595998b8f copy the monitor over when masquerading (bug #3809)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6287 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-05 00:02:09 +00:00
Russell Bryant
7fe4d52579 prevent mem leak (bug #4842)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6286 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 23:45:54 +00:00
Russell Bryant
39d4e1253b fix qop to be RFC compliant (bug #4841)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6285 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 23:31:50 +00:00
Russell Bryant
f7eada3cff fix potential crash in close_mailbox (bug #4800)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6284 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 23:03:56 +00:00
Russell Bryant
405ff91e92 unmask SIGHUP before exec'ing AGI scripts (bug #4854)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6283 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 22:52:15 +00:00
Russell Bryant
ce07ed72c0 add some more aliases from RFC's 3841 and 4028 (bug #4889)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6282 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 22:39:23 +00:00
Russell Bryant
150fc177cd fix broken logic (bug #4879)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6281 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-04 20:26:36 +00:00
Mark Spencer
c73ad9e6f9 Fix memory leak
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6276 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-03 20:22:27 +00:00
Russell Bryant
cf638de6ad make sure iaxs gets initialized (bug #4856)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6252 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-08-01 14:48:26 +00:00
Russell Bryant
40ea953811 add note about fix to LEN
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6241 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-28 17:42:43 +00:00
Russell Bryant
8061ba32c3 fix potential seg fault when using LEN() with a string greater than 80 characters (bug #4839)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6240 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-28 17:40:46 +00:00
Russell Bryant
120e4bc237 add note about fix to chan_local
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-26 14:48:05 +00:00
Russell Bryant
4fc7030156 fix masquerading of local channels into the new channel type (bug #4529)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6222 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-26 14:46:28 +00:00
Russell Bryant
34d2254f70 add note about the app_disa change
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6220 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-25 23:45:18 +00:00
Russell Bryant
b47ed67c84 don't set the account code if one wasn't supplied (bug #4751)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6219 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-25 23:41:29 +00:00
Russell Bryant
e6f049f9bf remove some unnecessary checks
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6195 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-25 18:15:25 +00:00
Russell Bryant
7491dba549 this is my cheap hack to fix the build problem on darwin since it now has
poll.h.  If anyone can think of a cleaner way to handle this, suggestions
are welcome


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-13 18:06:48 +00:00
Russell Bryant
3e7d040f3f *** empty log message ***
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6118 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-13 14:05:48 +00:00
Russell Bryant
c78761cc7c fix typo in app description (bug #4697)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6117 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-13 14:04:28 +00:00
Russell Bryant
6b6eb7977b fix compiler warning (bug #4682)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6109 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-12 15:27:09 +00:00
Russell Bryant
a795d02a30 update the password in memory as well when using externpass (bug #4602)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-12 01:34:16 +00:00
Russell Bryant
2faf30d730 if the first user hangs up while being prompted for a pin, don't hold the
conference open (bug #4656)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6088 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-11 22:42:45 +00:00
Russell Bryant
c2a39b5c64 change insecure options to support 'port' and/or 'invite' instead of forcing
the 'port' option when using 'invite' (bug #4024)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-11 22:25:53 +00:00
Russell Bryant
ffc2c34f15 make sure an automatic log rotation doesn't result in nasty recursion (bug #4646)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6045 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-07 17:43:48 +00:00
Russell Bryant
57cb8c168c update for change to zapras
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-07 15:26:17 +00:00
Russell Bryant
f1274662f4 ensure buffer policy is restored after RAS is done with a channel (bug #4648)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6043 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-07 15:15:59 +00:00
Russell Bryant
9f6e57f90a add man pages for astgenkey, autosupport, and safe_asterisk (bug #4645)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-06 22:30:44 +00:00
Admin Commit
8ff6d5cabf This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6041 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-06 22:30:44 +00:00
Russell Bryant
298718ebaa fix misplaced shebang (bug #4643)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6040 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-07-06 22:22:21 +00:00
Russell Bryant
171872003b fix busted osp build
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-30 14:35:46 +00:00
Russell Bryant
5fe5bf08b2 fix callerid matching in extensions.conf
formatting fixes for the ChangeLog


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6014 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-29 21:02:35 +00:00
Russell Bryant
cf238fa10d when switching back to voice mode, wait for 'B' (bug #3833)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6007 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 22:27:10 +00:00
Russell Bryant
7e3d58e030 after a *70, re-enable call waiting on hangup (bug #3971)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6006 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 22:20:22 +00:00
Russell Bryant
508b530e39 merge endian.h (bug #3867)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6005 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 22:12:25 +00:00
Admin Commit
5e168ffd67 This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6004 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 22:12:25 +00:00
Russell Bryant
9e05fb4f39 print non-codec capabilities correctly (bug #3960)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@6003 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-24 21:53:02 +00:00
Russell Bryant
a2c28355e0 add note about 2nd gen
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5988 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-23 19:32:10 +00:00
Russell Bryant
0e4c9f9765 update for 1.0.8
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5980 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-23 01:00:32 +00:00
Russell Bryant
4d504015d4 correctly jump to fax extension when inside of a macro (bug #4471)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5967 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-22 14:01:26 +00:00
Russell Bryant
3e2bd82411 tweak for arm4vl (bug #4545)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5955 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-21 14:27:28 +00:00
Russell Bryant
2877470389 fix via comparison to not be case sensitive (bug #4496)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5954 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-21 14:15:55 +00:00
Russell Bryant
4a15544b22 add support for native DTMF
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-15 21:42:31 +00:00
Russell Bryant
9400e87db0 remove pointless dereference (bug #4353)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5914 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 21:07:48 +00:00
Russell Bryant
200ca9631d remove my debug output, d'oh! :)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5913 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 20:57:38 +00:00
Russell Bryant
4f1e96c0b6 Fix offset calculation for signed linear (bug #4433)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5912 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 20:49:33 +00:00
Russell Bryant
eac2ef9374 fix bounds checking (bug #4406)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5911 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 20:30:47 +00:00
Russell Bryant
dd70231e97 oops!
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5910 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 20:24:38 +00:00
Russell Bryant
02bb0b5e22 don't kill the call if tdd mode is not supported by a channel (bug #4370)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5909 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 19:45:49 +00:00
Russell Bryant
f14775e845 fix return values on systems where an unsigned char is the default (bug #4455)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5908 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 18:41:48 +00:00
Russell Bryant
ee90d54c2e update indications to be current with cvs head (inspired by bug #4440)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-14 04:21:14 +00:00
Russell Bryant
f4c2a167ed update changelog
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-13 22:22:34 +00:00
Russell Bryant
0ad6773b76 if no extension is specified on an overlap call, use the 's' extension (bug #4317)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-13 22:18:44 +00:00
Russell Bryant
320be7fff9 handle stale authentication nonces more properly (bug #4451)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5902 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-13 20:35:15 +00:00
Russell Bryant
0c2abdf74e restructure buggy parse_args routine
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5899 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-10 20:52:27 +00:00
Russell Bryant
0b3cfb26b4 fix SayUnixTime (bug #4423)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5808 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-06-01 20:56:18 +00:00
Russell Bryant
cbc30c9163 fix recording of voicemail duration (bug #4288)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5804 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 13:08:45 +00:00
Russell Bryant
71a395e3e3 fix a sizeof bug (bug #4264)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5803 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 12:58:08 +00:00
Russell Bryant
b2073cb75f correctly handle rtp padding (bug #4270)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 12:55:43 +00:00
Russell Bryant
df905cf5a2 remove seemingly bogus line (bug #4299)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5801 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 12:51:49 +00:00
Russell Bryant
cf45c660cc fix rtptimeout options for a specific peer (bug #4325)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5800 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 05:30:07 +00:00
Russell Bryant
2995096956 fix a mem leak (bug #4154)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5799 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 04:39:24 +00:00
Russell Bryant
a6e8158ddc add "Referred-by" to the aliases list (bug #4404)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5798 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 04:17:33 +00:00
Russell Bryant
68206d0890 find sound files that are in the language directory itself (bug #4399)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5797 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 03:36:45 +00:00
Russell Bryant
6dbcb94c01 update changelog for the last fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 03:27:59 +00:00
Russell Bryant
91f9740856 fix distinctive ring for queue members (bug #3978)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5795 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 03:22:34 +00:00
Russell Bryant
083cf7af1d fix mem leak (bug #4318)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5794 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 02:57:15 +00:00
Russell Bryant
984142aebe Fix reply digest selection of size (bug #4409)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5793 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 02:47:10 +00:00
Russell Bryant
29f7161c9b set DNID on incoming calls (bug #4220)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5792 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 02:34:28 +00:00
Russell Bryant
6618cec0d7 don't print an error when you receive no data until normal circumstances with recvfrom (bug #4156)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5791 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 02:24:16 +00:00
Russell Bryant
ebe377fc5c fix comment (bug #4139)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5790 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-31 02:20:30 +00:00
Russell Bryant
268eedc2f3 hopefully the last try at making this happy across
various versions of newt (bug #4388)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-28 01:40:13 +00:00
Russell Bryant
eadb02a84f fix usage of const char (bug #4288)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5771 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-26 12:21:27 +00:00
Russell Bryant
c98832d092 fix output when no help text is available for a cli command
fix a seg fault when astmm is enabled (bug #4356)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5759 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-24 10:29:12 +00:00
Russell Bryant
888c329e65 reset 'confirm' mode so DTMF can be used by Zap callees after confirming (bug #4083)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5730 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 03:13:31 +00:00
Russell Bryant
548ce34d97 close sip socket on unload (bug #4152)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 03:04:25 +00:00
Russell Bryant
2e4b4764fb fix some compilation issues for ppc (bug #4228)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5728 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 02:59:43 +00:00
Russell Bryant
bf1069b3ae perform variable substitution earlier so it can be used for the cidmatch as well (bug #4094)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5725 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-19 02:51:00 +00:00
Russell Bryant
f717cd2719 fix mem leak with MYSQL_USERS (bug #4287)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5703 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-16 17:54:55 +00:00
Russell Bryant
cda604fabe note default values (bug #4284)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5697 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-16 13:26:19 +00:00
Russell Bryant
6125965ff5 Remove double fout++ and comment on flag (bug #4267)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5695 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-16 03:10:20 +00:00
Russell Bryant
a6cea6892b only initialize random number generators in one place (bug #4017)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5694 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-16 03:04:59 +00:00
Russell Bryant
1031a3c36d document zap options (bug #4166)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5687 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-15 23:28:19 +00:00
Russell Bryant
89d62574ef protect ResponseTimeout and DigitTimeout apps from crashing when called in non-PBX channels (bug #4092)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5685 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-15 23:26:29 +00:00
Russell Bryant
262e9c3003 indicate default timeouts (bug #4050)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-15 16:42:25 +00:00
Russell Bryant
43e32456ca ensure that calls to gethostbyname are null terminated,
also use MAXHOSTNAMELEN where appropriate (bug #4198) (bug #4212)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5675 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-15 15:55:31 +00:00
Russell Bryant
fcb8ab5da6 allow spaces in monitor filenames (Thanks to gbdrbob for catching this one!)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-14 18:21:43 +00:00
Russell Bryant
0f5dbaf7ec initialize errno and don't report an error when poll() returns without indicating one (bug #4059)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5635 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 02:42:48 +00:00
Russell Bryant
8e267ac60a remove unnecessary declaration (bug #4040)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5634 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 02:33:33 +00:00
Russell Bryant
794d0b2c68 use ast_strlen_zero, also fix a codec config parsing error (bug #4169)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5633 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 02:22:56 +00:00
Russell Bryant
8c97879e99 oops, I wasn't done with this
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5632 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 01:47:39 +00:00
Russell Bryant
47f2779b9d *** empty log message ***
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-12 01:43:36 +00:00
Russell Bryant
c77e7ed452 add notes about file descriptors (bug #4134)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5625 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-11 03:44:07 +00:00
Russell Bryant
a9fd6fca9e fix ast config path (bug #4184)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5624 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-11 03:26:51 +00:00
Russell Bryant
57b353cebf fix compat with astmm (bug #4217)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5623 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-11 03:16:52 +00:00
Russell Bryant
07c87b82ff only unlock hintlock once (bug #4205)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5622 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-11 03:07:39 +00:00
Russell Bryant
f1c3d761aa add note about the effects of time changes (bug #4020)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5617 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-10 04:09:21 +00:00
Russell Bryant
34f9e85a11 add fixup routine (bug #3825)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-10 03:58:26 +00:00
Russell Bryant
56cf655835 fix queue URL passing (bug #3543)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5615 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-10 03:28:01 +00:00
Russell Bryant
4d1e5adfdc allow ALERTING even after PROCEEDING (bug #3963)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5614 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-10 01:39:50 +00:00
Russell Bryant
3d263c243a add missing newline to warning message (bug #4183)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5592 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-05-06 07:17:17 +00:00
Russell Bryant
334e508e66 warn about headers, too
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5503 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-26 14:30:23 +00:00
Russell Bryant
28eedd8e44 look in the correct place for sounds (bug #3983)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5478 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 09:39:13 +00:00
Russell Bryant
e0aaf08b3b fix unloading problems (bug #4019)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5477 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 07:59:59 +00:00
Russell Bryant
e16718bb2e create useful output for time left to expire (bug #4022)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5476 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 07:24:34 +00:00
Russell Bryant
1e70fa09cd add some newlines and fix some misspellings (bug #4027)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5475 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 07:15:39 +00:00
Russell Bryant
a2f752ec6c fix bogus output from 'show agents' with no name (bug #4030)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5474 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 07:06:40 +00:00
Russell Bryant
3ad71d439c add warning if you try to use the _. exten (bug #4032)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-15 06:44:35 +00:00
Russell Bryant
d667d39367 add missing newline (bug #4018)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5457 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-13 03:45:53 +00:00
Russell Bryant
c96d5eabad add README about incompatibility with 0.63 of FreeTDS (bug #3996)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-11 03:41:42 +00:00
Admin Commit
941ba1c5be This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5448 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-11 03:41:42 +00:00
Russell Bryant
17045b502f space out initial registrations (bug #3104)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5428 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-06 17:09:03 +00:00
Russell Bryant
916f6b627a correct 'sync' on action_originate (bug #3922)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5426 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-06 16:45:41 +00:00
Russell Bryant
e56c7ba459 correctly set amaflags (bug #3962)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5425 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-06 16:39:45 +00:00
Russell Bryant
34bc1ac241 don't define a functioning returning an int inside of a do{...}while(0) (bug #3865)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5410 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 17:08:05 +00:00
Russell Bryant
4920426fbd I just gave up sleeping to stay up all night working on bugs ...
I hope I didn't break anything!  :)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5408 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 10:45:20 +00:00
Russell Bryant
e5f2fef425 remove unimplemented option (bug #3890)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5407 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 10:26:48 +00:00
Russell Bryant
4faec1b262 fix say number with a leading zero (bug #3884)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5406 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 10:15:00 +00:00
Russell Bryant
efc4fdf079 silly sizeof ... (bug #3887)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5405 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 10:12:24 +00:00
Russell Bryant
8b6aa2741c Clear out received tag in 407/401's (bug #3885)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5404 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 10:08:53 +00:00
Russell Bryant
90fea452ac keep going even if file not found with GET DATA (bug #3878)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 09:52:05 +00:00
Russell Bryant
8451fd7f7d fix 'highpriority' for asterisk.conf (bug #3860)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5402 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 09:37:02 +00:00
Russell Bryant
ed8a15efce fix timeout with no password (bug #3589)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5401 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 09:31:11 +00:00
Russell Bryant
6bee09440d don't pass audio until the call has been acked if configured to do so (bug #3677)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5400 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 08:32:04 +00:00
Russell Bryant
d54b330a2e handle AST_FORMAT_SLINEAR endianness properly on big-endian systems (bug #3865)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5399 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 07:10:06 +00:00
Russell Bryant
621b5be6cd fix *67 (bug #3940)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5398 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 06:58:02 +00:00
Russell Bryant
687846975e fix rtpchecksums option (bug #3908)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5397 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 06:53:14 +00:00
Russell Bryant
315e0c3054 I guess we'll need the sound file if I want that last patch to actually work ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5396 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 06:34:54 +00:00
Russell Bryant
4f4009663c say "minus" for negative numbers (bug #3948)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 06:31:55 +00:00
Russell Bryant
48f1386fff merge kevin's patches to remove color escape sequences from the logs (bug #3929)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5394 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 06:09:27 +00:00
Russell Bryant
8f0e43be23 FreeBSD compile warning (bug #3938)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5393 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 05:59:30 +00:00
Russell Bryant
4b165caef4 check for result *after* starting the network thread (bug #3952)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5392 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 05:56:44 +00:00
Russell Bryant
4a14b7c071 fix accountcode (bug #3951)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5391 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-05 05:33:13 +00:00
Russell Bryant
e12e134ef9 reflect the correct format of ${DATETIME} in the doc (bug #3857)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5381 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-04 07:28:34 +00:00
Russell Bryant
7b319eb03a update log
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-04 07:08:36 +00:00
Russell Bryant
98d05f22ac correctly respond to an INVITE with T.38 (bug #3818)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-04 07:05:55 +00:00
Russell Bryant
7ba20c5024 fix compile warning for FreeBSD (bug #3937)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5377 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-04 06:33:26 +00:00
Russell Bryant
2e6d346313 remove duplicate checking (bug #3927)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-02 17:41:19 +00:00
Russell Bryant
8aaa9e194e find endian.h on non-linux (bug #3846)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5358 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-02 07:59:45 +00:00
Russell Bryant
60a9627192 *** empty log message ***
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 04:38:40 +00:00
Russell Bryant
28a319be01 process the last line, even if it doesn't have a newline char (bug #3919)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5334 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 04:17:42 +00:00
Russell Bryant
f066af663f fix endianness (bug #3839)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5333 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 04:09:45 +00:00
Russell Bryant
1e2baaf12e fix wav fomat (bug #3837)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5329 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 03:23:33 +00:00
Russell Bryant
f56ba6a441 ignore interrupted system calls (bug #3831)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5328 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 03:13:38 +00:00
Russell Bryant
2ea44416b2 add missing line for the autosupport script (bug #3828)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5327 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-04-01 02:49:21 +00:00
Russell Bryant
78f6f43d19 fix chopping off of prompts (bug #3784)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5325 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-31 22:20:15 +00:00
Russell Bryant
42b84afa40 change ',' to '.' (bug #3799)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5288 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-28 06:42:14 +00:00
Russell Bryant
be446083ab don't send a "to" on a "100 Trying", also be case insensitive when parsing the "to" tag (bug #3801)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5287 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-28 06:35:09 +00:00
Russell Bryant
61538bec92 update for reload commands (bug #3697)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5286 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-28 05:54:19 +00:00
Russell Bryant
4402a86f93 fix saying the date in spanish (bug #3642)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5285 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-28 05:40:13 +00:00
Russell Bryant
4ead78e851 look for the fax extension in the main context, as well (bug #3634)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5283 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-28 04:48:25 +00:00
Russell Bryant
d056623e60 Don't use deprecated "2" location for G.726 (rfc3551)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5262 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-25 23:41:13 +00:00
Russell Bryant
a281bef2b3 don't explode if a box running CVS head sends trunk frames with timestamps (bug #3790)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5202 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-18 17:30:05 +00:00
Matthew Fredrickson
4b30e9ee37 Fixed parking bug w/ chan_sip and loss of MOH
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5200 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-17 23:48:42 +00:00
Russell Bryant
2b1a8d34d9 look in /usr/include/speex for speex.h (bug #3761)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5186 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-17 14:43:51 +00:00
Russell Bryant
bc70235479 fix TXTCIDName (bug #3681)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5184 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-17 00:19:23 +00:00
Russell Bryant
857bf5486b update from angler
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5170 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-11 17:15:22 +00:00
Russell Bryant
4d6e2801d1 update config to clarify options for how the work in the stable branch
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5165 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-11 07:50:03 +00:00
Russell Bryant
f4a80f1609 make docs on agent groups a little bit more clear (bug #3652)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5162 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-11 06:37:59 +00:00
Russell Bryant
26d298f693 update for 1.0.7
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5160 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-10 16:43:07 +00:00
Russell Bryant
926270782f add a little note about downgrading from CVS head
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-10 08:15:05 +00:00
Russell Bryant
fd7f18421d add a check to prevent a seg fault from an unknown cause ... (bug #3496)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5122 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-02 22:32:57 +00:00
Russell Bryant
ee53dc7286 prevent crash with some extra checks while doing authentication (bug #3686)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5121 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-02 22:24:02 +00:00
Russell Bryant
d565dc3225 Be sure to process SDP if we already have an owner (bug #3701)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5120 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-02 17:38:27 +00:00
Russell Bryant
fe07794bba add autosupport script for Digium support (bug #3685)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5114 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-01 14:51:24 +00:00
Admin Commit
4aa9d15438 This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5113 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-03-01 14:51:24 +00:00
Russell Bryant
83e1402d8a release RTP ports early on SUBSCRIBE (bug #3655 / #3673)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5101 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-28 00:30:35 +00:00
Russell Bryant
f1c93a8ff3 move the processing of SDP data to after determining the user (bug #3660)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-27 02:37:23 +00:00
Russell Bryant
a004c5ca9e some more management command description updates (bug #3645)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5095 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-27 02:14:15 +00:00
Russell Bryant
d6efd17100 fix seg fault with combination of 'g' and # transfer (bug #3650)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-27 01:40:43 +00:00
Russell Bryant
3aeb519068 fix a compiler warning
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-27 01:31:30 +00:00
Russell Bryant
eb767e674f update IAXy firmware with a registration fix
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-26 19:18:22 +00:00
Russell Bryant
b4af00a20f attempt a restart on a connection error (bug #3628)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5090 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-26 18:57:14 +00:00
Russell Bryant
39e574a8bd add description for monitor management commands (bug #3610)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-26 18:23:18 +00:00
Russell Bryant
04c06471e6 keeping the changelog up to date for 1.0.6
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5080 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-25 18:14:19 +00:00
Russell Bryant
687b01f298 move function prototypes outside of functions to compile under gcc4 (bug #3662)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5079 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-25 18:11:41 +00:00
Russell Bryant
8e59e3e38c changelog for 1.0.6, thanks file!
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5072 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-24 21:26:40 +00:00
Russell Bryant
1dec1dfb9c handle server going down (bug #3597)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-21 04:44:26 +00:00
Russell Bryant
292059c9cb handle DNS failures on startup more gracefully (bug #3086)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5061 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-21 03:57:27 +00:00
Russell Bryant
63b6e2a2a1 fix misspelling of separate (bug #3607)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5052 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-19 00:41:21 +00:00
Russell Bryant
9420fee71d fix ${EXTEN:X} where X < 0 (bug #3572)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5051 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-19 00:27:52 +00:00
Russell Bryant
ece9341019 typo (bug #3557)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5030 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-14 22:47:57 +00:00
Russell Bryant
e608ffdaa9 I changed my mind on this - I don't want to needlessly break anything ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5028 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-14 03:06:37 +00:00
Russell Bryant
684ffcce61 update doc (bug #3526)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5027 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-14 02:56:15 +00:00
Russell Bryant
a346745899 respect A,B,C,D (bug #3538)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5026 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-14 02:16:33 +00:00
Russell Bryant
5ef097f5d7 minor fix for deadlock detection, but I hope nobody has to use it :) (bug #3531)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@5025 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-13 23:43:58 +00:00
Russell Bryant
d35a82a5b6 preserve original callerid functionality for 1.0 (bug #3490)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4994 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-09 22:53:30 +00:00
Russell Bryant
b2ab9ffaec fix potential seg fault (bug #3519)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 17:10:25 +00:00
Russell Bryant
2e88a61fa3 don't crash on undefined keys (bug #3514)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 04:41:35 +00:00
Russell Bryant
9e1d3683fa Make sure 10 byte read is considered EOF not error (bug #3505)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4978 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 04:29:19 +00:00
Russell Bryant
528d2dcff5 Make sure we always transmit the same from line (bug #3492)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4977 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 04:13:53 +00:00
Russell Bryant
40969e6b29 fix div by zero (bug #3467)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4976 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 04:05:29 +00:00
Russell Bryant
59814ed3e5 Fix wav append mode (bug #3498)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4975 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 03:53:36 +00:00
Russell Bryant
8f2106c5e3 update readme (bug #3309)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4974 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 03:38:27 +00:00
Russell Bryant
37a80ea3bc typo (bug #3483)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4973 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 03:28:11 +00:00
Russell Bryant
a46350e315 only use default cid if specified (bug #3486)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-02-07 03:25:22 +00:00
Russell Bryant
e1a6d33ed0 Fix interation of # transfer and flash hook transfer (bug #3011)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 07:19:10 +00:00
Russell Bryant
4979d7fbb1 handle INFO A through D (bug #3445)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4916 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 07:16:08 +00:00
Russell Bryant
bdcbd76e13 fix restrictcid with mysql users (bug #3442)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4915 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 07:06:57 +00:00
Russell Bryant
081e28667e fix simultaneous voicemail messages -- Thanks Robert! (bug #3394)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4914 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 06:53:33 +00:00
Russell Bryant
1ef98ac6de fix DIALEDPEERNUMBER (bug #3427)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4913 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 06:46:05 +00:00
Russell Bryant
b90f6b40d9 fix reloading secret options (bug #3432)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4912 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-29 06:40:09 +00:00
Russell Bryant
2bb388ebc8 fix parking (bug #3396)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4905 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-28 01:24:59 +00:00
Russell Bryant
1714f299c9 fix 'show codec' (bug #3427)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4904 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-28 01:18:25 +00:00
Russell Bryant
5571294b91 fix c++ compatibility issue (bug #3426)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-28 01:13:19 +00:00
Russell Bryant
3696407c67 don't fail register on dns error (bug #3424)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4902 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-28 00:58:09 +00:00
Russell Bryant
76b18e2d6e remove unused vars (bug #3423)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-28 00:34:43 +00:00
Russell Bryant
d9d599a84d fix penalty behavior, thanks florian!! (bug #3114)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4883 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-23 23:57:41 +00:00
Russell Bryant
36d08dc8f0 copy language (bug #3401)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4875 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-22 01:44:12 +00:00
Russell Bryant
3035547927 fix broken callerid (bug #3395)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4874 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-22 01:27:08 +00:00
Russell Bryant
517413928f add mpg123 warnings (bug #3392)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4867 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 05:18:35 +00:00
Russell Bryant
b3ee85ee4a fix mpg123 for non-linux (bug #3385)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 04:52:01 +00:00
Russell Bryant
540a2571ca update email subject (bug #3384)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-21 04:40:34 +00:00
Russell Bryant
53840ccffc rephrase my note
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4849 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-20 04:02:58 +00:00
Russell Bryant
61d87e19f1 Fix "send text" crash (bug #3378)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4848 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-20 03:38:23 +00:00
Russell Bryant
63a98a2bed Send a few more rfc2833 events on hte "down" (bug #3339)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4843 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-19 02:33:54 +00:00
Russell Bryant
4542f92842 add missing .cvsignore (bug #3373)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4842 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-19 02:29:08 +00:00
Admin Commit
fa023ceccf This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4841 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-19 02:29:08 +00:00
Russell Bryant
6c5bf0d542 give outbound channels callerid of their extension after calling (bug #2489)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4826 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 22:52:49 +00:00
Russell Bryant
a3b4b4459c update unused code ... (bug #3342)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 21:02:13 +00:00
Russell Bryant
58b1b7f825 prevent duplicate 200 ... and some formatting
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4824 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 19:29:10 +00:00
Russell Bryant
4f5f53706d various fixes (bug #3340)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4819 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 01:43:33 +00:00
Russell Bryant
a87fb09763 typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4818 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 01:36:48 +00:00
Russell Bryant
fb3de07e39 Don't even attempt to masquerade a channel into itself (bug #3040)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4817 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 00:43:46 +00:00
Russell Bryant
02bb7498b0 Fix ringback on outbound skinny calls (bug #3295)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4816 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 00:37:22 +00:00
Russell Bryant
8c9f25ece1 working on the correct fix (bug #3080)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4815 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-17 00:12:30 +00:00
Russell Bryant
6356638b6a Keep dead console from killing asterisk (bug #3331)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4802 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-15 19:58:41 +00:00
Russell Bryant
659eb8bd36 update for 1.0.4
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4789 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-14 05:09:42 +00:00
Russell Bryant
2ef418765c Don't allow masquerading into oneself (bug #3040)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4788 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-14 04:59:54 +00:00
Russell Bryant
33cffbd344 update firmware to version 22
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4784 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-14 04:18:33 +00:00
Russell Bryant
5d877f53ed fix global operator=yes (bug #3080)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4782 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 05:39:04 +00:00
Russell Bryant
334bd9f57d Handle syntax errors in group descriptions more gracefully (bug #3330)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4781 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 05:18:31 +00:00
Russell Bryant
a6fb9eef88 fix typo in tone detect (bug #3315)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4779 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 05:06:49 +00:00
Russell Bryant
d9d070e30b update doc (bug #3310)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 04:39:55 +00:00
Russell Bryant
73f50db89e copy musicclass (bug #3235)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4777 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 04:37:25 +00:00
Russell Bryant
d1b6552ef7 fix message sent on codec mismatch (bug #3306)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4776 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 04:34:01 +00:00
Russell Bryant
8b079c4bf2 look in another location for speex.h (bug #3283)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4775 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 04:22:07 +00:00
Russell Bryant
22db312ca1 nevermind ... (bug #3255)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4774 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 04:08:15 +00:00
Russell Bryant
fbc3e2e3ce Send "405 Method Not Allowed" if a message is received outside of a call (bug #3324)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4772 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-13 03:00:02 +00:00
Russell Bryant
d2d967d775 update help text (bug #3298)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4764 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-11 19:12:00 +00:00
Russell Bryant
c69bb18184 logging update (bug #3268)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4758 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-11 18:07:42 +00:00
Russell Bryant
dc5042762f fix silly header (bug #3288)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4730 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-09 14:58:45 +00:00
Russell Bryant
efcc597742 improve CLI command info (Thanks, Leif!) (bug #3220)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4729 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-09 14:46:45 +00:00
Russell Bryant
b0a516034f send script parameter with FastAGI (bug #3270)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4721 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 22:40:56 +00:00
Russell Bryant
2880956743 cosmetic fixes (bug #3271)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4720 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 22:18:44 +00:00
Russell Bryant
56dd7681f8 Make sure we clear out owner in SUB_REAL when moving a call (bug #3267)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4719 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 22:12:02 +00:00
Russell Bryant
a6d0cc6c02 fix typo (bug #3265)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4718 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 21:54:24 +00:00
Russell Bryant
9c92ca2d27 update docs on ANSWEREDTIME and DIALEDTIME (bug #3209)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 21:48:14 +00:00
Russell Bryant
f8526ef3ba fix disposition to be a string instead of an int (bug #3255)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4716 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-08 21:15:07 +00:00
Russell Bryant
96624911f0 fix SIP presence (bug #3251)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4697 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-06 19:37:55 +00:00
Russell Bryant
5967d8f2bc stop music on hold when channel is hung up instead of after the channel is destroyed (bug #3035)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4692 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-06 05:15:50 +00:00
Russell Bryant
dcd5da730a document a problem with polycom phones (bug #3129)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4671 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-05 05:59:07 +00:00
Russell Bryant
3c54495507 fix an incorrect discription and some formatting (bug #3226)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4670 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-05 05:41:24 +00:00
Russell Bryant
f9eedef7ee change option to be consistent (old option still works, too) (bug #3163)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4669 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-05 05:37:01 +00:00
Russell Bryant
de117b689e Add option to save a file after pressing '0' to go to the operator (bug #3057)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4668 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-05 05:32:47 +00:00
Admin Commit
5799a6a60c This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4667 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-05 05:32:47 +00:00
Russell Bryant
a97e1f873f putting the timestamp stuff back in ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4660 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-04 19:02:16 +00:00
Russell Bryant
74239cb26c I got a crash in iax that I think is related to this timestamp patch, so I am going to back it out until we get it figured out. (bug #3119)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4658 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-04 17:18:15 +00:00
Russell Bryant
fa7a75c886 Make sure to wake up sleeper on sip transfer issue (bug #2938)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4654 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-04 05:59:49 +00:00
Russell Bryant
4a187156b2 change from dos to unix text format (bug #3213)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4653 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-04 05:53:16 +00:00
Russell Bryant
f45b8fcc70 lock sooner, fix some formatting (bug #3207)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4652 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-04 05:47:49 +00:00
Russell Bryant
1db571cb37 don't exit AGI when file not found to stream (bug #3212)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4648 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 18:19:05 +00:00
Russell Bryant
8289500dd5 just kidding ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4647 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 18:09:01 +00:00
Russell Bryant
ec9f642dc3 add agent vars (bug #3158)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4646 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 18:02:04 +00:00
Russell Bryant
f2a2787b42 increase stack size for searching through contexts (bug #3182)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4645 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 03:07:40 +00:00
Russell Bryant
da0fb57df3 make sure to set sin_family (bug #3188)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4644 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 02:38:26 +00:00
Russell Bryant
10378ed083 stop sending rtp when on hold (bug #3185)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4643 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-03 02:36:24 +00:00
Russell Bryant
b0b9c0928b fix MWI with type=friend (bug #3004)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4631 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2005-01-02 00:32:32 +00:00
Russell Bryant
9386b25b51 add missing header
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4613 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 22:30:09 +00:00
Russell Bryant
9a81d7270e update 'show app' output (bug #3170)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4612 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 21:46:39 +00:00
Russell Bryant
29062def81 update help text (bug #3171)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4611 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 21:40:45 +00:00
Russell Bryant
ad851c87b5 fix typos (bug #3162)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 21:16:25 +00:00
Russell Bryant
b67759975d fix show dialplan for hints (bug #3074)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4609 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 20:57:41 +00:00
Russell Bryant
f4adada2e8 make cid rings configurable (bug #2889)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4608 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 20:36:57 +00:00
Russell Bryant
a4671a3d88 remove duplicate option parsing (bug #3173)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4607 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 20:07:17 +00:00
Russell Bryant
379d3a133c ignore invalid rtp packets (bug #3030)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4606 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 19:34:47 +00:00
Russell Bryant
dd8d225b4e prevent timestamp jumps (bug #3119)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4605 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 19:07:08 +00:00
Russell Bryant
78693d31e9 Re-use SIP authentication, aka "The Broadvoice patch" (bug #2917)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4604 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-30 18:30:23 +00:00
Russell Bryant
49d18cef95 fix some typos (bug #3162)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4566 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-28 12:10:02 +00:00
Russell Bryant
cc8996361c prevent seg faults
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4562 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-27 22:34:25 +00:00
Russell Bryant
8060744e05 remove unused option (bug #3127)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4548 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-23 20:25:06 +00:00
Russell Bryant
799ff464f2 Don't hold the iaxsl[x] lock while finding the peer, do it ahead of time.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4547 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-23 20:21:49 +00:00
Russell Bryant
b107f9c1c9 honor global nat setting for users (bug #3125)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4531 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-23 00:38:40 +00:00
Russell Bryant
0e39f602ea Make case in manager events consistent (bug #3116)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4530 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-22 22:49:00 +00:00
Russell Bryant
a391baf1be Remove the SIP ACK fixes at the request of Olle - This will go in when a more complete fix is available
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4528 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-22 18:26:17 +00:00
Russell Bryant
3384173257 OpenBSD fixes (bug #3120)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4526 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-22 06:18:32 +00:00
Russell Bryant
51ea5a2797 fix for sparc64 (bug #3102)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4517 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 20:49:24 +00:00
Russell Bryant
1298f6585d fix typo in ast_say_number_full_en (bug #3101)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4516 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 20:42:58 +00:00
Russell Bryant
2ebc21f175 Make sure that read/write format are set up correctly
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4515 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 20:15:29 +00:00
Russell Bryant
6c6ec855a7 Make sure we del any remaining connections (bug #2982)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 20:10:06 +00:00
Russell Bryant
10bbbf2c14 Add errno (bug #3063)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4513 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 19:56:43 +00:00
Russell Bryant
fcf810801f unregister the correct apps (bug #3089)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4512 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 15:24:43 +00:00
Russell Bryant
665cf4fb64 fix missing "sip:" in ACK (bug #2687)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4511 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-21 15:10:06 +00:00
Russell Bryant
6f60468d3d Fix SIP ACK for BYE (bug #3087)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4500 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-20 01:48:20 +00:00
Russell Bryant
00f2912aaa don't return -1 if user enters nothing (bug #3042)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4499 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-20 01:40:29 +00:00
Russell Bryant
b32ffb8190 Olle's ACK fix (bug #2687)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4498 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-20 01:32:58 +00:00
Russell Bryant
4ceafc96b1 fix parking issue (bug #3840)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4497 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-20 00:27:19 +00:00
Russell Bryant
bed2bda4f4 remove codecs/gsm/lib with make clean (bug #3031)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4496 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-20 00:24:21 +00:00
Russell Bryant
a97bf16d2d fix language handling (bug #3023)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4481 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-19 13:06:11 +00:00
Russell Bryant
8a987daf3b don't allow '#' as a voicemail password (bug #3066)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4465 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 23:05:28 +00:00
Russell Bryant
8d135aa5ae Fix use count for agent/local (bug #2996)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4457 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 19:07:10 +00:00
Russell Bryant
0a4530cead Make macro processing consistent with regular exten processing (bug #3044)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4449 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 03:56:10 +00:00
Russell Bryant
ad1ee839cc getting rid of utils/ that came from head
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4448 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-15 03:53:12 +00:00
Russell Bryant
1b53088a4b Fix setvar issue (bug #3010)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4420 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-10 23:19:54 +00:00
Russell Bryant
a5b4c8881e implement fmtp 16 in rtp (bug #2999)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-10 11:32:12 +00:00
Russell Bryant
2583e00e03 update comment (bug #2999)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4414 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-10 11:28:11 +00:00
Russell Bryant
7e3f8ee419 update iaxy firmware to version 20
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4407 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-09 04:59:28 +00:00
Russell Bryant
b035299213 remove unneccesary 'if'
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-08 14:42:44 +00:00
Russell Bryant
4020387145 fix case sensitivity in codec prefs
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4401 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-08 06:17:43 +00:00
Russell Bryant
3e7c0ce67f fix mem leak in free_value (bug #2990)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4397 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-07 19:43:06 +00:00
Russell Bryant
0caa4033c9 Don't hold modlock while doing reload
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-07 02:16:49 +00:00
Russell Bryant
cd65e922b2 Add missing free's in rare circumstances (bug #2985)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4394 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-06 23:15:19 +00:00
Russell Bryant
90f22a990d merge codec preference changes for SIP
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4388 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-05 05:17:51 +00:00
Russell Bryant
0b74a19625 Release call lock while we look for the peer to avoid a deadlock
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4384 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 23:35:36 +00:00
Russell Bryant
429432f5ff canceled voicemail emails corrupt wav (bug 2957)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4382 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 01:59:08 +00:00
Russell Bryant
46f97f76a5 fix error message (bug 2897)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4381 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 01:45:25 +00:00
Russell Bryant
ec3b5c9b5b update Festival doc (bug 2964)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4380 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 01:20:26 +00:00
Russell Bryant
a160a8c9d5 add missing config destroy (bug 2944)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 01:15:27 +00:00
Russell Bryant
65d6be272d doing <flash> *0 while on fxs causes Asterisk to crash (bug 2963)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4376 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-12-03 00:11:21 +00:00
Russell Bryant
1e75116e74 Try call if call is 0 or more (bug #2935)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-26 01:54:11 +00:00
Russell Bryant
187942d00a fix MEETMESECS (bug 2936)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4345 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 18:27:22 +00:00
Russell Bryant
418ff58e61 don't increment the timestamp on dtmf (bug 2928)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4344 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 18:16:16 +00:00
Russell Bryant
bb6333e01f change size of var_val (bug 2926)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4343 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 18:13:16 +00:00
Russell Bryant
df6c1f8b39 fix for rpid (bug 2910)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4342 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 15:19:11 +00:00
Russell Bryant
2b9417e2e5 get rid of stray '\n' (bug 2922)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4340 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 07:32:43 +00:00
Russell Bryant
f53fe9761c fix manager events that report lag time (bug 2919)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4339 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 07:24:58 +00:00
Russell Bryant
902661dd8e decrement use counter after timeout on INVITE (bug 2898)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4338 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 07:20:12 +00:00
Russell Bryant
646dc459fa Segfault if head caller times out of queue with moh running (bug 2891)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4337 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 07:13:08 +00:00
Russell Bryant
3d48bc2f61 fix repeated sequence numbers (bug 2902)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4336 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 07:04:04 +00:00
Russell Bryant
28109dedf5 fix mem leak (bug #2940)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4334 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-25 06:14:50 +00:00
Russell Bryant
10781d30d2 don't create owner twice
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4310 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-22 03:57:41 +00:00
Russell Bryant
c0c9a1a5f0 little fixes (bug #2899)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4295 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-19 13:25:17 +00:00
Russell Bryant
13e54102fd fix continuation line parsing (bug #2892)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4291 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-18 04:27:12 +00:00
Russell Bryant
f4470352ff check to see if FD's are open before closing (bug #2858)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4289 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-18 04:20:25 +00:00
Russell Bryant
77ad568144 fix tab completion issue (bug #988)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4288 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-18 04:16:47 +00:00
Russell Bryant
1b05a4639d detect sequence number rollover (bug #2887)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4286 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-18 04:03:10 +00:00
Russell Bryant
e73c4e4a44 tweaks to make valgrind happy
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4285 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-18 03:51:58 +00:00
Russell Bryant
60c2988f53 add depend support for h323 (bug #2757)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4253 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-15 02:35:35 +00:00
Russell Bryant
35dd204d76 fix for older linux systems (bug #2853)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4252 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-15 02:30:32 +00:00
Russell Bryant
8eb984caec fix setting language in chan_sip (bug #2848)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4251 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-15 02:26:08 +00:00
Russell Bryant
9801c6c63f make valgrind less chatty about res_crypto (bug #2857)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4250 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-15 02:20:20 +00:00
Russell Bryant
1b754ff59d another little typo ... to make twisted happy
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4235 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-14 00:16:02 +00:00
Russell Bryant
713ddd2172 fix little typo
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4234 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-14 00:08:03 +00:00
Russell Bryant
d3cb67a4cd allow dashes in extensions since they can be in patterns (bug #2835)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4228 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 15:27:30 +00:00
Russell Bryant
1f02d433b3 send full contact when poking a peer (bug #2836)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4227 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 14:34:01 +00:00
Russell Bryant
dbf6ad2ecd fix seg fault (bug #2772)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4226 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 14:29:15 +00:00
Russell Bryant
c6938534bd fix to compile chan_phone with 2.6 kernel headers (bug #2831)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4225 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 14:13:57 +00:00
Russell Bryant
ac659af3ea fix for Darwin/OSX (bug #2833)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4224 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 14:03:42 +00:00
Russell Bryant
bdabdcbf1e fix off by one (bug #2827)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-12 13:48:42 +00:00
Russell Bryant
457d6f2822 update Changelog
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4196 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-09 05:42:56 +00:00
Russell Bryant
0d23dbb490 Fix supervised transfer (bug #2813)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4194 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-09 05:28:47 +00:00
Russell Bryant
3cd77bab28 Fix verbose error (bug #2809)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4193 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-09 05:23:56 +00:00
Russell Bryant
a39d05855e fix spelling error (bug 2810)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4192 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-09 05:19:27 +00:00
Russell Bryant
66d0e5756f fix voicemail debug output (bug #2789)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-08 00:30:21 +00:00
Russell Bryant
591eb8fac1 fix sip mwi to conform to RFC (bug #2793)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4181 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-08 00:24:09 +00:00
Russell Bryant
0ae97da489 fix build for Mac OSX (bug #2803)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4179 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-08 00:08:58 +00:00
Russell Bryant
014a0a178b fixes from bug 2800
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4178 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-07 23:47:25 +00:00
Russell Bryant
5e8f6247fb update to ChangeLog ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4177 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-07 23:26:07 +00:00
Russell Bryant
de1c7219ea Setup fromuser properly (bug #2802)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4176 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-07 23:22:48 +00:00
Russell Bryant
7352e07e12 fix non standard characters (bug 2778)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4162 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-05 02:45:59 +00:00
Russell Bryant
bfe333ed67 fix compilation of chan_h323 (bug 2786,2790,2669)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4161 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-04 23:14:26 +00:00
Russell Bryant
ec25eab17f Use getpid (non-linux) or gettid(linux) for thread identification (bug #2745)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4153 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-03 02:03:43 +00:00
Russell Bryant
e212b875fc update changelog ...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4152 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-02 22:42:15 +00:00
Russell Bryant
92f1ec6be4 fix say for portuguese numbers (bug #2749)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4151 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-02 22:40:11 +00:00
Russell Bryant
4443cc2107 Don't show partially-filled strings over remote console (asterisk -r) (bug #2764)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4150 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-02 22:37:47 +00:00
Russell Bryant
d612a5ce42 prevent seg fault with attempt_transfer (bug #2741)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4146 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-11-02 12:56:15 +00:00
Russell Bryant
808ecc893a fix summaries for chan_h323 cli commands (bug #2739)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4126 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-29 14:03:28 +00:00
James Golovich
1e9087357b Backport chan_zap.c part of bug 2703 to 1.0
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4111 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-27 14:41:55 +00:00
Russell Bryant
124c88fba3 fix mgcp bug (bug #2696)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4105 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-26 15:34:30 +00:00
Russell Bryant
ef3f4d29c9 fix short message issue (bug #2723)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4104 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-26 15:22:09 +00:00
Russell Bryant
67478da442 fix LOG_NOTICE message to exten@context from context@exten (bug #2725)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4103 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-26 14:42:01 +00:00
Russell Bryant
67c451783b fix show applications output for forkcdr (bug #2677)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4096 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 21:57:27 +00:00
Russell Bryant
517e58c5df update ChangeLog for 1.0.2 release
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4095 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 19:10:02 +00:00
James Golovich
b86dbdb22c Backport recent memory fixes to 1.0
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4094 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 17:57:25 +00:00
Russell Bryant
807bbf3461 fix debug message for voicemail email (bug #2675)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4093 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 00:51:27 +00:00
Russell Bryant
8b1cdad2f5 Fix user event body (bug #2713)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4092 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 00:48:28 +00:00
Russell Bryant
ce25d82aa7 Make sure close() is not called on a fd < 1 with a wrapper call (bug #2710)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-25 00:18:06 +00:00
Russell Bryant
d354512eca Sending SMS with no hangup supervision will hang the channel (bug #2708)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4090 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 21:26:29 +00:00
Russell Bryant
f0131ed0f2 fix bindaddr for BSD (bug #2668)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4089 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 21:24:17 +00:00
Russell Bryant
a4111e1f93 Add missing fixup (bug #2667)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4088 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 21:15:23 +00:00
Russell Bryant
f7098a28be make sure malloc was successful before doing memset (bug #2704)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4087 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 21:09:40 +00:00
Russell Bryant
fdffdc9364 Handle unknown 1xx reponses as 100 (bug #2698)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4086 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-24 21:04:32 +00:00
Russell Bryant
d91f0dadc9 fix potential segfault in MeetMeAdmin (bug #2681)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4063 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-23 12:42:16 +00:00
Russell Bryant
291309df4a Don't "ignore" on CANCEL (bug #2670)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4062 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-23 12:23:25 +00:00
Russell Bryant
eb08e2600f get rid of some compile warnings (bug #2540)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4059 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-23 12:14:47 +00:00
Russell Bryant
0faa51794d make operator=no work correctly, fix typo (bug #2665)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4058 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-23 11:55:21 +00:00
Russell Bryant
5f5017defd fix for MGCP (bug #2499)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4027 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-17 04:57:10 +00:00
Russell Bryant
737023e9d4 call ast_destroy on cfg appropriately (bug #2661)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4019 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-16 16:04:17 +00:00
Russell Bryant
e98d85bf09 Fix hangup handling with chansiavail with agent (bug #2658)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4016 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-16 15:35:23 +00:00
Jeremy McNamara
6adefd13c1 stop seg
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4011 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 23:45:09 +00:00
Russell Bryant
5c37031b1c Fix some small typos (bug #2649)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4010 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 23:11:16 +00:00
Russell Bryant
141a82674e Forget fullcontact when specific number is dialed (bug #2620)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4009 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 23:08:03 +00:00
Russell Bryant
2423b41fd9 tab completion on show dialplan from -r asterisk with large extensions.conf will segfault (bug #2634)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4008 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 22:51:14 +00:00
Russell Bryant
f85277c7b3 show output with 'pri debug' with verbosity set to zero (bug #2645)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4007 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 22:46:56 +00:00
Russell Bryant
d60b955324 fix for attended transfers (bug #2632)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4006 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 22:43:35 +00:00
Russell Bryant
663636b515 fix setlanguage seg fault (bug #2641)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@4005 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-14 22:39:40 +00:00
Russell Bryant
8bccbf9afb get rid of extra error message (bug #2633)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3989 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-13 02:24:30 +00:00
Russell Bryant
1d10b782b4 add missing \n (bug #2595)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3982 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-12 02:29:08 +00:00
Russell Bryant
3cd48f9a41 fix delivery times on trunks (bug #2587)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3981 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-12 02:25:38 +00:00
Russell Bryant
d50ef1d333 change SIP_MAX_PACKET to 4096 (bug #2623)
----------------------------------------------------------------------


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3980 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-12 02:16:04 +00:00
Russell Bryant
fbcd14b30b add check for incorrect voicemail sequencing (bug #2436)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3979 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-12 01:39:21 +00:00
Russell Bryant
09ca3690b5 Fix wave file lengths (bug #2486)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3963 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-09 16:32:21 +00:00
Russell Bryant
6db145dd07 Discontiguous descending Zap channel group fails to use all members (bug #2581)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3958 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-09 00:44:30 +00:00
Russell Bryant
0ff4ffd27f fix for Nortel SIP dtmf (bug #2605)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3957 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-09 00:36:46 +00:00
Russell Bryant
ba5a68e731 chan_iax2 shouldn't use IAX/Registry on temponly peers (bug #2610)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3956 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-09 00:25:53 +00:00
Russell Bryant
df358f42e0 verbose fixes (bug #2602)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3955 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-08 23:29:50 +00:00
Russell Bryant
0e518edee4 Fix paths for app_sms (bug #2597)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3945 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-08 02:59:35 +00:00
Russell Bryant
dea58d2e88 Do not send progress when "ringing" only flag is set (bug #2553)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3944 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-08 02:50:22 +00:00
Russell Bryant
97efb246b3 Always fflush for any CDR file (not only for Master.csv) (bug #2586)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3943 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-08 02:43:08 +00:00
Russell Bryant
17a3454b92 voicemail beep shouldn't be played till we get next message number (bug #2594)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3942 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-08 00:05:36 +00:00
Russell Bryant
3680bb43cd add Rich Murphey to the CREDITS
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3941 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-07 21:51:21 +00:00
Russell Bryant
b0180d6665 Fix which one we use initreqprep vs. reqprep (bug #2591, 2596)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3940 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-07 21:47:46 +00:00
Russell Bryant
f9be91101f fix bindaddr for MGCP (bug #2579)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3925 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-06 22:26:10 +00:00
Russell Bryant
e16c9c9ecd fix MWI for SIP (bug #2582)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3924 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-06 22:15:32 +00:00
Russell Bryant
57c86cec8e fix chan_mgcp seg fault (bug #2572)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3917 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-05 21:39:00 +00:00
Russell Bryant
d600998f7e make SIP_CODEC behave as it suggests (bug #2566)
Correction: The last commit for cdr_odbc.c was actually bug #2569.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3913 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-05 02:13:00 +00:00
Russell Bryant
a75365ea8e change to use ast_true in cdr_odbc (bug #2566)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3912 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-05 02:02:17 +00:00
Russell Bryant
8b34f224e7 Fix CDR for supervised transfer in chan_zap and chan_sip (bug #1595)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3903 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 20:22:41 +00:00
Russell Bryant
97d664a128 NetBSD build doesn't always find libncurses (bug #2560)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3901 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 18:37:37 +00:00
Russell Bryant
04bcd2ff23 Has(New)VoiceMail does not assume INBOX if no folder specified (bug #2559)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3899 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-03 16:43:29 +00:00
Russell Bryant
3f9482f7bc Use event2str consisitently in chan_zap anytime we are printing debug info about an event (bug 2548)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3873 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-02 00:12:20 +00:00
Russell Bryant
ebf15d6151 Ignore ;transport=udp from 302 Moved Temp. requests (bug #2549)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3866 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-10-01 00:32:47 +00:00
Russell Bryant
38f5196684 Ignore message type in CID Delivery (bug #2552)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3865 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-09-30 23:56:19 +00:00
Russell Bryant
31457d7be1 Fix seg fault with IAX native bridging (bug #2550)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3864 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-09-30 22:47:32 +00:00
Admin Commit
a196c598b6 This commit was manufactured by cvs2svn to create branch 'v1-0'.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/v1-0@3863 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2004-09-30 22:47:32 +00:00
965 changed files with 5066 additions and 3014 deletions

View File

@@ -1,6 +0,0 @@
asterisk
build.h
ast_expr.c
.version
.depend
.applied

1
.version Normal file
View File

@@ -0,0 +1 @@
1.0.11.1

0
BUGS Executable file → Normal file
View File

2
CREDITS Executable file → Normal file
View File

@@ -58,6 +58,8 @@ Thorsten Lockert - OpenBSD, FreeBSD ports, making MacOS X port run on 10.3,
bugs. tholo@sigmasoft.com
Brian West - ODBC support and Bug Marshaling
William Waites - syslog support, SIP NAT traversal for SIP-UA. ww@styx.org
Rich Murphey - Porting to FreeBSD, NetBSD, OpenBSD, and Darwin.
rich@whiteoaklabs.com http://whiteoaklabs.com
=== OTHER CONTRIBUTIONS ===
John Todd - Monkey sounds and associated teletorture prompt

276
CHANGES → ChangeLog Executable file → Normal file
View File

@@ -1,4 +1,279 @@
NOTE: Corrections or additions to the ChangeLog may be submitted to
http://bugs.digium.com. Documentation and formatting fixes are not
not listed here. A complete listing of changes is available through
the Asterisk-CVS mailing list hosted at http://lists.digium.com.
Asterisk 1.0.11.1
-- chan_iax2
-- A bug in the vulnerability fix in the last release could cause Asterisk
to improperly reject incoming video frames and result in deadlocks.
Asterisk 1.0.11
-- chan_iax2
-- A security vulnerability that could lead to denial of service attacks
and Asterisk process crashes was fixed in this release.
Asterisk 1.0.10
-- chan_local
-- In releases 1.0.8 and 1.0.9, the Local channels that are created would
not be masqueraded into the new channel type. This has now been fixed.
-- chan_sip
-- The 'insecure' options have been changed to support matching peersby IP
only, not requiring authentication on incoming invites, or both. Before,
to not require authentication on incoming invites also required matching
peers based on IP only.
-- chan_zap
-- Before, call waiting could occur during the initial ringing on the line.
This has now been fixed.
-- app_disa
-- We will now not set the accountcode if one is not supplied.
-- app_meetme
-- If the first caller into a conference hangs up while being prompted for
the conference pin number, the conference will no longer be held open.
-- app_userevent
-- Events created with this application were indicated as a "call" event
instead of a "user" event. This made the "user" event permissions
not work correctly.
-- app_voicemail
-- When using the externpass option for voicemail, the password will be
immediately updated in memory as well, instead of having to wait for
the next time the configuration is reloaded.
-- app_zapras
-- We now ensure buffer policy is restored after RAS is done with a channel.
This could cause audio problems on the channel after zapras is done
with it.
-- res_agi
-- We now unmask the SIGHUP signal before executing an AGI script. This
fixes problems where some AGI scripts would continue running long after
the call is over.
-- extensions
-- A potential crash has been fixed when calling LEN() to get the length of
a string that was 80 characters or larger.
-- general
-- Added man pages for astgenkey, autosupport, and safe_asterisk
Asterisk 1.0.9
-- fix bug in callerid matching in the dialplan that was introduced in 1.0.8
Asterisk 1.0.8
-- chan_zap
-- Asterisk will now also look in the regular context for the fax extension
while executing a macro. Previously, for this to work, the fax extension
would have to be included in the macro definition.
-- On some systems, ALERTING will be sent after PROCEEDING, so code has been
added to account for this case.
-- If no extension is specified on an overlap call, the 's' extension will
be used.
-- chan_sip
-- We no longer send a "to" tag on "100 Trying" messages, as it is
inappropriate to do so.
-- We now respond correctly to an invite for T.38 with a "488 Not acceptable
here"
-- We now discard saved tags on 401/407 responses in case the provider we're
talking to tries to pull a dirty trick on us and change it.
-- rtptimeout options will now be correctly set on a peer basis rather than
only global
-- chan_mgcp
-- Fixed setting of accountcode
-- Fixed where *67 to block callerid only worked for first call
-- chan_agent
-- We now will not pass audio until the agent has acked the call if the
configuration
is set up for the agent to do so.
-- chan_alsa
-- Fixed problems with the unloading of this module
-- res_agi
-- A fix has been added to prevent calls from being hung up when more than
one call is executing an AGI script calling the GET DATA command.
-- AGI scripts will now continue to run even if a file was not found with
the GET DATA command.
-- When calling SAY NUMBER with a number like 09, we will now say "nine"
instead of "zero"
-- app_dial
-- There was a problem where text frames would not be forwarded before the
channel has been answered.
-- app_disa
-- Fixed the timeout used when no password is set
-- app_queue
-- Distinctive ring has been fixed to work for queue members
-- rtp
-- Fixed a logic error when setting the "rtpchecksums" option
-- say.c
-- A problem has been fixed with saying the date in Spanish.
-- Makefile
-- A line was missing for the autosupport script that caused "make rpm" to
fail
-- format_wav_gsm
-- Fixed a problem with wav formatting that prevented files from being
played in some media players
-- pbx_spool
-- Fixed if the last line of text in a file for the call spool did not
contain a new line, it would not be processed
-- logger
-- Fixed the logger so that color escape sequences wouldn't be sent to the
logs
-- format_sln
-- A lot of changes were made to correctly handle signed linear format on
big endian machines
-- asterisk.conf
-- fix 'highpriority' option for asterisk.conf
Asterisk 1.0.7
-- chan_sip
-- The fix for some codec availibility issues in 1.0.6 caused music on hold
problems, but has now been fixed.
-- chan_skinny
-- A check has been added to avoid a crash.
-- chan_iax2
-- A feature has been added to CVS head to have the option of sending
timestamps with trunk frames. It is not supported in 1.0, but a change
has been made so that it will at least not choke if sent trunk
timestamps.
-- app_voicemail
-- Some checks have been added to avoid a crash.
-- speex
-- The path /usr/include/speex has been added for a place to look for the
speex header.
Asterisk 1.0.6
-- chan_iax2:
-- Fixed a bug dealing with a division by zero that could cause a crash
-- chan_sip:
-- Behavior was changed so that when a registration fails due to DNS
resolution issues, a retry will be attempted in 20 seconds.
-- Peer settings were not reset to null values when reloading the
configuration file. Behavior has been changed so that these values are
now cleared.
-- 'restrictcid' now properly works on MySQL peers.
-- Only use the default callerid if it has been specified.
-- Asterisk was not sending the same From: line in SIP messages during
certain times. Fixed to make sure it stays the same. This makes some
providers happier, to a working state.
-- Certain circumstances involving a blank callerid caused asterisk to
segmentation fault.
-- There was a problem incorrectly matching codec availablity when global
preferences were different from that of the user. To fix this,
processing of SDP data has been moved to after determining who the call
is coming from.
-- Asterisk would run out of RTP ports while waiting for SUBSCRIBE's to
expire even though an RTP port isn't needed in this case. This has been
fixed by releasing the ports early.
-- chan_zap:
-- During a certain scenario when using flash and '#' transfers you would
hear the other person and the music they were hearing. This has been
fixed.
-- A fix for a compilation issue with gcc4 was added.
-- chan_modem_bestdata:
-- A fix for a compilation issue with gcc4 was added.
-- format_g729:
-- Treat a 10-byte read as an end of file indication instead of an error.
Some G729 encoders like to put 10-bytes at the end to indicate this.
-- res_features:
-- During certain situations when parking a call, both endpoints would get
musiconhold. This has been fixed so the individual who parked the call
will hear the digits and not musiconhold.
-- app_dial:
-- DIALEDPEERNUMBER is now being set, so if you attempted to use it in the
past and failed, it should work now.
-- A callerid change caused many headaches, this has been reversed to the
original 1.0 behavior.
-- A crash caused with the combination of the 'g' option and # transfer was
fixed.
-- app_voicemail:
-- If two people hit the voicemail system at the same time, and were leaving
a message the second message was overwriting the first. This has been
fixed so that each one is distinct and will not overwrite eachother.
-- cdr_tds:
-- If the server you were using was going down, it had the potential to
bring your asterisk server down with it. Extra stuff has been added so
as to bring in more error/connection checking.
-- cdr_pgsql:
-- This will now attempt to reconnect after a connection problem.
-- IAXY firmware:
-- This has been updated to version 23. It includes a fix for lost
registrations.
-- internals
-- Behavior was changed for 'show codec <number>' to make it more intuitive.
-- DNS failures and asterisk do not get along too well, this is not totally
the case anymore.
-- Asterisk will now handle DNS failures at startup more gracefully, and
won't crash and burn
-- Choosing to append to a wave file would render the outputted wave file
corrupt. Appending now works again.
-- If you failed to define certain keys, asterisk had the potential to crash
when seeing if you had used them.
-- Attempting to use such things as ${EXTEN:-1} gave a wrong return value.
However, this was never a documented feature...
Asterisk 1.0.5
-- chan_zap
-- fix a callerid bug introduced in 1.0.4
-- app_queue
-- fix some penalty behavior
Asterisk 1.0.4
-- general
-- fix memory leak evident with extensive use of variables
-- update IAXy firmware to version 22
-- enable some special write protection
-- enable outbound DTMF
-- fix seg fault with incorrect usage of SetVar
-- other minor fixes including typos and doc updates
-- chan_sip
-- fix codecs to not be case sensitive
-- Re-use auth credentials
-- fix MWI when using type=friend
-- fix global NAT option
-- chan_agent / chan_local
-- fix incorrect use count
-- chan_zap
-- Allow CID rings to be configured in zapata.conf
-- no more patching needed for UK CID
-- app_macro
-- allow Macros to exit with '*' or '#' like regular extension processing
-- app_voicemail
-- don't allow '#' as a password
-- add option to save voicemail before going to the operator
-- fix global operator=yes
-- app_read
-- return 0 instead of -1 if user enters nothing
-- res_agi
-- don't exit AGI when file not found to stream
-- send script parameter when using FastAGI
Asterisk 1.0.3
-- chan_zap
-- fix seg fault when doing *0 to flash a trunk
-- rtp
-- seg fault fix
-- chan_sip
-- fix to prevent seg fault when attempting a transfer
-- fix bug with supervised transfers
-- fix codec preferences
-- chan_h323
-- fix compilation problem
-- chan_iax2
-- avoid a deadlock related to a static config of a BUNCH of peers
-- cdr_pgsql
-- fix memory leak when reading config
-- Numerous other minor bug fixes
Asterisk 1.0.2
-- Major bugfix release
Asterisk 1.0.1
-- Added AGI over TCP support
-- Add ability to purge callers from queue if no agents are logged in
-- Fix inband PRI indication detection
@@ -6,6 +281,7 @@ Asterisk 1.0.1
-- Fixed seg fault for ast_control_streamfile
-- Make pick-up extension configurable via features.conf
-- Numerous other bug fixes
Asterisk 1.0.0
-- Use Q.931 standard cause codes for asterisk cause codes
-- Bug fixes from the bug tracker

0
HARDWARE Executable file → Normal file
View File

0
LICENSE Executable file → Normal file
View File

56
Makefile Executable file → Normal file
View File

@@ -38,6 +38,7 @@ OPTIONS+=$(shell if $(CC) -mcpu=v8 -S -o /dev/null -xc /dev/null >/dev/null 2>&1
OPTIONS+=-fomit-frame-pointer
endif
MPG123TARG=linux
endif
ifeq ($(findstring BSD,${OSARCH}),BSD)
@@ -142,11 +143,13 @@ CFLAGS+=$(shell if test ${OSVERSION} -lt 500016 ; then echo "-D_THREAD_SAFE"; fi
LIBS+=$(shell if test ${OSVERSION} -lt 502102 ; then echo "-lc_r"; else echo "-pthread"; fi)
INCLUDE+=-I/usr/local/include
CFLAGS+=$(shell if [ -d /usr/local/include/spandsp ]; then echo "-I/usr/local/include/spandsp"; fi)
MPG123TARG=freebsd
endif # FreeBSD
ifeq (${OSARCH},NetBSD)
CFLAGS+=-pthread
INCLUDE+=-I/usr/local/include
INCLUDE+=-I/usr/local/include -I/usr/pkg/include
MPG123TARG=netbsd
endif
ifeq (${OSARCH},OpenBSD)
@@ -197,7 +200,7 @@ ifeq (${OSARCH},FreeBSD)
LIBS+=-lcrypto
endif
ifeq (${OSARCH},NetBSD)
LIBS+=-lpthread -lcrypto -lm -L/usr/local/lib -lncurses
LIBS+=-lpthread -lcrypto -lm -L/usr/local/lib -L/usr/pkg/lib -lncurses
endif
ifeq (${OSARCH},OpenBSD)
LIBS=-lcrypto -lpthread -lm -lncurses
@@ -211,14 +214,25 @@ OBJS=io.o sched.o logger.o frame.o loader.o config.o channel.o \
astmm.o enum.o srv.o dns.o aescrypt.o aestab.o aeskey.o \
utils.o
ifeq (${OSARCH},Darwin)
OBJS+=poll.o dlfcn.o
ASTLINK=-Wl,-dynamic
SOLINK=-dynamic -bundle -undefined suppress -force_flat_namespace
OBJS+= poll.o
CFLAGS+=-DPOLLCOMPAT
else
ASTLINK=-Wl,-E
SOLINK=-shared -Xlinker -x
endif
ifeq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/sys/poll.h),)
OBJS+= poll.o
CFLAGS+=-DPOLLCOMPAT
endif
ifeq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/dlfcn.h),)
OBJS+= dhfcn.o
CFLAGS+=-DDLFCNCOMPAT
endif
CC=gcc
INSTALL=install
@@ -307,7 +321,7 @@ clean:
rm -f build.h
rm -f ast_expr.c
@if [ -e editline/Makefile ]; then $(MAKE) -C editline distclean ; fi
@if [ -d mpg123-0.59r ]; then make -C mpg123-0.59r clean; fi
@if [ -d mpg123-0.59r ]; then $(MAKE) -C mpg123-0.59r clean; fi
$(MAKE) -C db1-ast clean
$(MAKE) -C stdtime clean
@@ -339,7 +353,7 @@ datafiles: all
exit 1; \
fi; \
done
for x in sounds/vm-* sounds/transfer* sounds/pbx-* sounds/ss-* sounds/beep* sounds/dir-* sounds/conf-* sounds/agent-* sounds/invalid* sounds/tt-* sounds/auth-* sounds/privacy-* sounds/queue-*; do \
for x in sounds/vm-* sounds/transfer* sounds/pbx-* sounds/ss-* sounds/beep* sounds/dir-* sounds/conf-* sounds/agent-* sounds/invalid* sounds/tt-* sounds/auth-* sounds/privacy-* sounds/queue-* sounds/hello-*; do \
if grep -q "^%`basename $$x`%" sounds.txt; then \
install -m 644 $$x $(DESTDIR)$(ASTVARLIBDIR)/sounds ; \
else \
@@ -374,6 +388,7 @@ bininstall: all
mkdir -p $(DESTDIR)$(ASTSPOOLDIR)/tmp
install -m 755 asterisk $(DESTDIR)$(ASTSBINDIR)/
install -m 755 contrib/scripts/astgenkey $(DESTDIR)$(ASTSBINDIR)/
install -m 755 contrib/scripts/autosupport $(DESTDIR)$(ASTSBINDIR)/
if [ ! -f $(DESTDIR)$(ASTSBINDIR)/safe_asterisk ]; then \
install -m 755 contrib/scripts/safe_asterisk $(DESTDIR)$(ASTSBINDIR)/ ;\
fi
@@ -398,6 +413,9 @@ bininstall: all
install -m 644 keys/iaxtel.pub $(DESTDIR)$(ASTVARLIBDIR)/keys
install -m 644 keys/freeworlddialup.pub $(DESTDIR)$(ASTVARLIBDIR)/keys
install -m 644 asterisk.8.gz $(DESTDIR)$(ASTMANDIR)/man8
install -m 644 contrib/scripts/astgenkey.8 $(DESTDIR)$(ASTMANDIR)/man8
install -m 644 contrib/scripts/autosupport.8 $(DESTDIR)$(ASTMANDIR)/man8
install -m 644 contrib/scripts/safe_asterisk.8 $(DESTDIR)$(ASTMANDIR)/man8
if [ -d contrib/firmware/iax ]; then \
install -m 644 contrib/firmware/iax/iaxy.bin $(DESTDIR)$(ASTVARLIBDIR)/firmware/iax/iaxy.bin; \
else \
@@ -405,7 +423,7 @@ bininstall: all
fi
( cd $(DESTDIR)$(ASTVARLIBDIR)/sounds ; ln -s $(ASTSPOOLDIR)/vm . )
( cd $(DESTDIR)$(ASTVARLIBDIR)/sounds ; ln -s $(ASTSPOOLDIR)/voicemail . )
if [ -f mpg123-0.59r/mpg123 ]; then make -C mpg123-0.59r install; fi
if [ -f mpg123-0.59r/mpg123 ]; then $(MAKE) -C mpg123-0.59r install; fi
@echo " +---- Asterisk Installation Complete -------+"
@echo " + +"
@echo " + YOU MUST READ THE SECURITY DOCUMENT +"
@@ -427,6 +445,19 @@ bininstall: all
@echo " + **Note** This requires that you have +"
@echo " + doxygen installed on your local system +"
@echo " +-------------------------------------------+"
@echo " + +"
@echo " + ** NOTE FOR DOWNGRADING FROM CVS HEAD ** +"
@echo " + +"
@echo " + If you are downgrading from CVS HEAD to +"
@echo " + a stable release, remember to delete +"
@echo " + everything from your asterisk modules +"
@echo " + directory (/usr/lib/asterisk/modules/) +"
@echo " + and the asterisk header directory +"
@echo " + (/usr/include/asterisk/) +"
@echo " + before doing a '$(MAKE) install'. +"
@echo " + +"
@echo " +-------------------------------------------+"
install: all datafiles bininstall
@@ -518,7 +549,7 @@ mpg123:
@wget -V >/dev/null || (echo "You need wget" ; false )
[ -f mpg123-0.59r.tar.gz ] || wget http://www.mpg123.de/mpg123/mpg123-0.59r.tar.gz
[ -d mpg123-0.59r ] || tar xfz mpg123-0.59r.tar.gz
make -C mpg123-0.59r linux
$(MAKE) -C mpg123-0.59r $(MPG123TARG)
config:
if [ -d /etc/rc.d/init.d ]; then \
@@ -537,12 +568,21 @@ depend: .depend
for x in $(SUBDIRS); do $(MAKE) -C $$x depend || exit 1 ; done
.depend:
@if ! which mpg123 &>/dev/null ; then \
echo "*** You don't have mpg123 installed. You're going to need ***";\
echo "*** it if you want MusicOnHold ***";\
elif ! mpg123 --longhelp 2>&1 | grep .59r &>/dev/null ; then \
echo "*************************************************************";\
echo "*** You have the WRONG version of mpg123... you need .59r ***";\
echo "*** Use 'make mpg123' to get the right verison ***";\
echo "*************************************************************";\
fi
./mkdep ${CFLAGS} `ls *.c`
FORCE:
%_env:
make -C $(shell echo $@ | sed "s/_env//g") env
$(MAKE) -C $(shell echo $@ | sed "s/_env//g") env
env:
env

61
README Executable file → Normal file
View File

@@ -136,6 +136,67 @@ parameters. For example, the line "channel => 25-47" creates objects for
the channels 25 through 47 of the tormenta card, obtaining the settings
from the variables specified above.
* SPECIAL NOTE ON TIME
Those using SIP phones should be aware the Asterisk is sensitive to
large jumps in time. Manually changing the system time using date(1)
(or other similar commands) may cause SIP registrations and other
internal processes to fail. If your system cannot keep accurate time
by itself use NTP (http://www.ntp.org/) to keep the system clock
synchronized to "real time". NTP is designed to keep the system clock
synchronized by speeding up or slowing down the system clock until it
is synchronized to "real time" rather than by jumping the time and
causing discontinuities. Most Linux distributions include precompiled
versions of NTP. Beware of some time synchronization methods that get
the correct real time periodically and then manually set the system
clock.
Apparent time changes due to daylight savings time are just that,
apparent. The use of daylight savings time in a Linux system is
purely a user interface issue and does not affect the operation of the
Linux kernel or Asterisk. The system clock on Linux kernels operates
on UTC. UTC does not use daylight savings time.
Also note that this issue is separate from the clocking of TDM
channels, and is known to at least affect SIP registrations.
* FILE DESCRIPTORS
Depending on the size of your system and your configuration,
Asterisk can consume a large number of file descriptors. In UNIX,
file descriptors are used for more than just files on disk. File
descriptors are also used for handling network communication
(e.g. SIP, IAX2, or H.323 calls) and hardware access (e.g. analog and
digital trunk hardware). Asterisk accesses many on-disk files for
everything from configuration information to voicemail storage.
Most systems limit the number of file descriptors that Asterisk can
have open at one time. This can limit the number of simultaneous
calls that your system can handle. For example, if the limit is set
at 1024 (a common default value) Asterisk can handle approxiately 150
SIP calls simultaneously. To change the number of file descriptors
follow the instructions for your system below:
== PAM-based Linux System ==
If your system uses PAM (Pluggable Authentication Modules) edit
/etc/security/limits.conf. Add these lines to the bottom of the file:
root soft nofile 4096
root hard nofile 8196
asterisk soft nofile 4096
asterisk hard nofile 8196
(adjust the numbers to taste). You may need to reboot the system for
these changes to take effect.
== Generic UNIX System ==
If there are no instructions specifically adapted to your system
above you can try adding the command "ulimit -n 8192" to the script
that starts Asterisk.
* MORE INFORMATION
See the doc directory for more documentation.

0
README.fpm Executable file → Normal file
View File

0
SECURITY Executable file → Normal file
View File

36
acl.c Executable file → Normal file
View File

@@ -242,20 +242,19 @@ int ast_ouraddrfor(struct in_addr *them, struct in_addr *us)
memset(&m_rtmsg, 0, sizeof(m_rtmsg));
m_rtmsg.m_rtm.rtm_type = RTM_GET;
m_rtmsg.m_rtm.rtm_flags = RTF_UP | RTF_HOST;
m_rtmsg.m_rtm.rtm_version = RTM_VERSION;
ast_mutex_lock(&routeseq_lock);
seq = ++routeseq;
ast_mutex_unlock(&routeseq_lock);
m_rtmsg.m_rtm.rtm_seq = seq;
m_rtmsg.m_rtm.rtm_addrs = RTA_IFA | RTA_DST;
m_rtmsg.m_rtm.rtm_addrs = RTA_DST | RTA_IFA;
m_rtmsg.m_rtm.rtm_msglen = sizeof(struct rt_msghdr) + sizeof(struct sockaddr_in);
sin = (struct sockaddr_in *)m_rtmsg.m_space;
sin->sin_family = AF_INET;
sin->sin_len = sizeof(struct sockaddr_in);
sin->sin_addr = *them;
if ((s = socket(PF_ROUTE, SOCK_RAW, 0)) < 0) {
if ((s = socket(PF_ROUTE, SOCK_RAW, AF_UNSPEC)) < 0) {
ast_log(LOG_ERROR, "Error opening routing socket\n");
return -1;
}
@@ -268,7 +267,7 @@ int ast_ouraddrfor(struct in_addr *them, struct in_addr *us)
}
do {
l = read(s, (char *)&m_rtmsg, sizeof(m_rtmsg));
} while (l > 0 && (m_rtmsg.m_rtm.rtm_seq != 1 || m_rtmsg.m_rtm.rtm_pid != pid));
} while (l > 0 && (m_rtmsg.m_rtm.rtm_seq != seq || m_rtmsg.m_rtm.rtm_pid != pid));
if (l < 0) {
if (errno != EAGAIN)
ast_log(LOG_ERROR, "Error reading from routing socket\n");
@@ -379,3 +378,32 @@ int ast_ouraddrfor(struct in_addr *them, struct in_addr *us)
return 0;
#endif
}
int ast_find_ourip(struct in_addr *ourip, struct sockaddr_in bindaddr)
{
char ourhost[MAXHOSTNAMELEN]="";
struct ast_hostent ahp;
struct hostent *hp;
struct in_addr saddr;
/* just use the bind address if it is nonzero */
if (ntohl(bindaddr.sin_addr.s_addr)) {
memcpy(ourip, &bindaddr.sin_addr, sizeof(*ourip));
return 0;
}
/* try to use our hostname */
if (gethostname(ourhost, sizeof(ourhost)-1)) {
ast_log(LOG_WARNING, "Unable to get hostname\n");
} else {
hp = ast_gethostbyname(ourhost, &ahp);
if (hp) {
memcpy(ourip, hp->h_addr, sizeof(*ourip));
return 0;
}
}
/* A.ROOT-SERVERS.NET. */
if (inet_aton("198.41.0.4", &saddr) && !ast_ouraddrfor(&saddr, ourip))
return 0;
return -1;
}

0
aescrypt.c Executable file → Normal file
View File

0
aeskey.c Executable file → Normal file
View File

19
aesopt.h Executable file → Normal file
View File

@@ -136,6 +136,7 @@
#define _AESOPT_H
#include <asterisk/aes.h>
#include "asterisk/endian.h"
/* CONFIGURATION - USE OF DEFINES
@@ -146,24 +147,6 @@
#if clauses.
*/
/* PLATFORM SPECIFIC INCLUDES */
#if defined( __OpenBSD__ )
# include <machine/types.h>
# include <sys/endian.h>
#elif defined( __FreeBSD__ ) || defined( __NetBSD__ )
# include <sys/types.h>
# include <sys/endian.h>
#elif defined( BSD ) && ( BSD >= 199103 ) || defined(__APPLE__)
# include <machine/endian.h>
#elif defined( __GNUC__ ) || defined( __GNU_LIBRARY__ )
# include <endian.h>
#if !defined(__APPLE__)
# include <byteswap.h>
#endif
#elif defined( linux )
# include <endian.h>
#endif
/* BYTE ORDER IN 32-BIT WORDS

0
aestab.c Executable file → Normal file
View File

View File

@@ -1,3 +0,0 @@
eagi-test
eagi-sphinx-test
.depend

0
agi/DialAnMp3.agi Executable file → Normal file
View File

0
agi/Makefile Executable file → Normal file
View File

0
agi/agi-test.agi Executable file → Normal file
View File

0
agi/eagi-sphinx-test.c Executable file → Normal file
View File

0
agi/eagi-test.c Executable file → Normal file
View File

0
agi/fastagi-test Executable file → Normal file
View File

0
agi/numeralize Executable file → Normal file
View File

0
alaw.c Executable file → Normal file
View File

111
app.c Executable file → Normal file
View File

@@ -136,6 +136,13 @@ int ast_app_getvoice(struct ast_channel *c, char *dest, char *dstfmt, char *prom
ast_frfree(f);
break;
}
res = ast_writestream(writer, f);
if (res < 0) {
ast_log(LOG_WARNING, "Failed to write to stream at %s!\n", dest);
ast_frfree(f);
break;
}
}
ast_frfree(f);
}
@@ -278,7 +285,7 @@ int ast_dtmf_stream(struct ast_channel *chan,struct ast_channel *peer,char *digi
if (!res) {
res = ast_waitfor(chan,100);
if (res > -1) {
for (ptr=digits;*ptr;*ptr++) {
for (ptr=digits; *ptr; ptr++) {
if (*ptr == 'w') {
res = ast_safe_sleep(chan, 500);
if (res)
@@ -518,9 +525,10 @@ int ast_play_and_wait(struct ast_channel *chan, char *fn)
static int global_silence_threshold = 128;
static int global_maxsilence = 0;
int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int *duration, int silencethreshold, int maxsilence)
int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int *duration, int silencethreshold, int maxsilence, const char *path)
{
char d, *fmts;
int d;
char *fmts;
char comment[256];
int x, fmtcnt=1, res=-1,outmsg=0;
struct ast_frame *f;
@@ -528,7 +536,7 @@ int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfi
char *sfmt[MAX_OTHER_FORMATS];
char *stringp=NULL;
time_t start, end;
struct ast_dsp *sildet; /* silence detector dsp */
struct ast_dsp *sildet=NULL; /* silence detector dsp */
int totalsilence = 0;
int dspsilence = 0;
int gotsilence = 0; /* did we timeout for silence? */
@@ -585,18 +593,22 @@ int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfi
}
}
sildet = ast_dsp_new(); /* Create the silence detector */
if (!sildet) {
ast_log(LOG_WARNING, "Unable to create silence detector :(\n");
return -1;
}
ast_dsp_set_threshold(sildet, silencethreshold);
if (path)
ast_unlock_path(path);
if (maxsilence > 0) {
sildet = ast_dsp_new(); /* Create the silence detector */
if (!sildet) {
ast_log(LOG_WARNING, "Unable to create silence detector :(\n");
return -1;
}
ast_dsp_set_threshold(sildet, silencethreshold);
rfmt = chan->readformat;
res = ast_set_read_format(chan, AST_FORMAT_SLINEAR);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set to linear mode, giving up\n");
ast_dsp_free(sildet);
return -1;
}
}
@@ -640,13 +652,13 @@ int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfi
totalsilence = 0;
if (totalsilence > maxsilence) {
/* Ended happily with silence */
if (option_verbose > 2)
ast_verbose( VERBOSE_PREFIX_3 "Recording automatically stopped after a silence of %d seconds\n", totalsilence/1000);
ast_frfree(f);
gotsilence = 1;
outmsg=2;
break;
/* Ended happily with silence */
if (option_verbose > 2)
ast_verbose( VERBOSE_PREFIX_3 "Recording automatically stopped after a silence of %d seconds\n", totalsilence/1000);
ast_frfree(f);
gotsilence = 1;
outmsg=2;
break;
}
}
/* Exit on any error */
@@ -706,10 +718,12 @@ int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfi
for (x=0;x<fmtcnt;x++) {
if (!others[x])
break;
if (totalsilence)
ast_stream_rewind(others[x], totalsilence-200);
else
ast_stream_rewind(others[x], 200);
if (res > 0) {
if (totalsilence)
ast_stream_rewind(others[x], totalsilence-200);
else
ast_stream_rewind(others[x], 200);
}
ast_truncstream(others[x]);
ast_closestream(others[x]);
}
@@ -718,20 +732,20 @@ int ast_play_and_record(struct ast_channel *chan, char *playfile, char *recordfi
ast_log(LOG_WARNING, "Unable to restore format %s to channel '%s'\n", ast_getformatname(rfmt), chan->name);
}
}
if (outmsg) {
if (outmsg > 1) {
if (outmsg > 1) {
/* Let them know recording is stopped */
ast_streamfile(chan, "auth-thankyou", chan->language);
if(!ast_streamfile(chan, "auth-thankyou", chan->language))
ast_waitstream(chan, "");
}
}
if (sildet)
ast_dsp_free(sildet);
return res;
}
int ast_play_and_prepend(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int *duration, int beep, int silencethreshold, int maxsilence)
{
char d = 0, *fmts;
int d = 0;
char *fmts;
char comment[256];
int x, fmtcnt=1, res=-1,outmsg=0;
struct ast_frame *f;
@@ -961,3 +975,46 @@ int ast_play_and_prepend(struct ast_channel *chan, char *playfile, char *recordf
return res;
}
int ast_lock_path(const char *path)
{
char *s;
char *fs;
int res;
int fd;
time_t start;
s = alloca(strlen(path) + 10);
fs = alloca(strlen(path) + 20);
if (!fs || !s) {
ast_log(LOG_WARNING, "Out of memory!\n");
return -1;
}
snprintf(fs, strlen(path) + 19, "%s/%s-%08x", path, ".lock", rand());
fd = open(fs, O_WRONLY | O_CREAT | O_EXCL, 0600);
if (fd < 0) {
fprintf(stderr, "Unable to create lock file: %s\n", strerror(errno));
return -1;
}
close(fd);
snprintf(s, strlen(path) + 9, "%s/%s", path, ".lock");
time(&start);
while (((res = link(fs, s)) < 0) && (errno == EEXIST) && (time(NULL) - start < 5))
usleep(1);
if (res < 0) {
ast_log(LOG_WARNING, "Failed to lock path '%s': %s\n", path, strerror(errno));
}
unlink(fs);
ast_log(LOG_DEBUG, "Locked path '%s'\n", path);
return res;
}
int ast_unlock_path(const char *path)
{
char *s;
s = alloca(strlen(path) + 10);
if (!s)
return -1;
snprintf(s, strlen(path) + 9, "%s/%s", path, ".lock");
ast_log(LOG_DEBUG, "Unlocked path '%s'\n", path);
return unlink(s);
}

View File

@@ -1 +0,0 @@
.depend

0
apps/Makefile Executable file → Normal file
View File

0
apps/app_adsiprog.c Executable file → Normal file
View File

2
apps/app_alarmreceiver.c Executable file → Normal file
View File

@@ -55,7 +55,7 @@ static char *tdesc = "Alarm Receiver for Asterisk";
static char *app = "AlarmReceiver";
static char *synopsis = "Provide support for receving alarm reports from a burglar or fire alarm panel\n";
static char *synopsis = "Provide support for receving alarm reports from a burglar or fire alarm panel";
static char *descrip =
"Alarm receiver application for Asterisk. Only 1 signalling format is supported at this time:\n"
"Ademco Contact ID. This application should be called whenever there is an alarm panel calling in\n"

0
apps/app_authenticate.c Executable file → Normal file
View File

0
apps/app_cdr.c Executable file → Normal file
View File

11
apps/app_chanisavail.c Executable file → Normal file
View File

@@ -38,11 +38,12 @@ static char *descrip =
"Checks is any of the requested channels are available. If none\n"
"of the requested channels are available the new priority will be\n"
"n+101 (unless such a priority does not exist or on error, in which\n"
"case ChanIsAvail will return -1). If any of the requested channels\n"
"are available, the next priority will be n+1, the channel variable\n"
"${AVAILCHAN} will be set to the name of the available channel and\n"
"the ChanIsAvail app will return 0. ${AVAILORIGCHAN} is\n"
"the canonical channel name that was used to create the channel.\n";
"case ChanIsAvail will return -1).\n"
"If any of the requested channels are available, the next priority will be n+1,\n"
"the channel variable ${AVAILCHAN} will be set to the name of the available channel\n"
"and the ChanIsAvail app will return 0.\n"
"${AVAILORIGCHAN} is the canonical channel name that was used to create the channel.\n"
"${AVAILSTATUS} is the status code for the channel.\n";
STANDARD_LOCAL_USER;

15
apps/app_controlplayback.c Executable file → Normal file
View File

@@ -64,24 +64,19 @@ static int controlplayback_exec(struct ast_channel *chan, void *data)
file = tmp;
if ((skip=strchr(tmp,'|'))) {
*skip = '\0';
*skip++;
*skip++ = '\0';
fwd=strchr(skip,'|');
if (fwd) {
*fwd = '\0';
*fwd++;
*fwd++ = '\0';
rev = strchr(fwd,'|');
if (rev) {
*rev = '\0';
*rev++;
*rev++ = '\0';
stop = strchr(rev,'|');
if (stop) {
*stop = '\0';
*stop++;
*stop++ = '\0';
pause = strchr(stop,'|');
if (pause) {
*pause = '\0';
*pause++;
*pause++ = '\0';
}
}
}

4
apps/app_cut.c Executable file → Normal file
View File

@@ -31,10 +31,10 @@ static char *tdesc = "Cuts up variables";
static char *app_cut = "Cut";
static char *cut_synopsis = "Cut(newvar=varname|delimiter|fieldspec)";
static char *cut_synopsis = "Splits a variable's content using the specified delimiter";
static char *cut_descrip =
"Cut(newvar=varname,delimiter,field)\n"
"Usage: Cut(newvar=varname,delimiter,fieldspec)\n"
" newvar - new variable created from result string\n"
" varname - variable you want cut\n"
" delimiter - defaults to '-'\n"

0
apps/app_datetime.c Executable file → Normal file
View File

0
apps/app_db.c Executable file → Normal file
View File

42
apps/app_dial.c Executable file → Normal file
View File

@@ -113,6 +113,7 @@ struct localuser {
int allowdisconnect_in;
int allowdisconnect_out;
int forcecallerid;
int noforwardhtml;
struct localuser *next;
};
@@ -134,7 +135,7 @@ static void hanguptree(struct localuser *outgoing, struct ast_channel *exception
#define AST_MAX_WATCHERS 256
static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localuser *outgoing, int *to, int *allowredir_in, int *allowredir_out, int *allowdisconnect_in, int *allowdisconnect_out, int *sentringing, char *status, size_t statussize)
static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localuser *outgoing, int *to, int *allowredir_in, int *allowredir_out, int *allowdisconnect_in, int *allowdisconnect_out, int *noforwardhtml, int *sentringing, char *status, size_t statussize)
{
struct localuser *o;
int found;
@@ -207,6 +208,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
*allowredir_out = o->allowredirect_out;
*allowdisconnect_in = o->allowdisconnect_in;
*allowdisconnect_out = o->allowdisconnect_out;
*noforwardhtml = o->noforwardhtml;
}
} else if (o->chan && (o->chan == winner)) {
if (!ast_strlen_zero(o->chan->call_forward)) {
@@ -301,6 +303,7 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
*allowredir_out = o->allowredirect_out;
*allowdisconnect_in = o->allowdisconnect_in;
*allowdisconnect_out = o->allowdisconnect_out;
*noforwardhtml = o->noforwardhtml;
}
break;
case AST_CONTROL_BUSY:
@@ -336,13 +339,14 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
case AST_CONTROL_PROGRESS:
if (option_verbose > 2)
ast_verbose ( VERBOSE_PREFIX_3 "%s is making progress passing it to %s\n", o->chan->name,in->name);
ast_indicate(in, AST_CONTROL_PROGRESS);
if (!outgoing->ringbackonly)
ast_indicate(in, AST_CONTROL_PROGRESS);
break;
case AST_CONTROL_OFFHOOK:
/* Ignore going off hook */
break;
case -1:
if (!outgoing->ringbackonly && !outgoing->musiconhold) {
if (!(outgoing->ringbackonly || outgoing->musiconhold)) {
if (option_verbose > 2)
ast_verbose( VERBOSE_PREFIX_3 "%s stopped sounds\n", o->chan->name);
ast_indicate(in, -1);
@@ -360,7 +364,14 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
!(outgoing->ringbackonly || outgoing->musiconhold)) {
if (ast_write(in, f))
ast_log(LOG_WARNING, "Unable to forward image\n");
} else if (single && (f->frametype == AST_FRAME_TEXT) &&
!(outgoing->ringbackonly || outgoing->musiconhold)) {
if (ast_write(in, f))
ast_log(LOG_WARNING, "Unable to text\n");
} else if (single && (f->frametype == AST_FRAME_HTML) && !outgoing->noforwardhtml) {
ast_channel_sendhtml(in, f->subclass, f->data, f->datalen);
}
ast_frfree(f);
} else {
in->hangupcause = o->chan->hangupcause;
@@ -383,6 +394,8 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
/* Got hung up */
*to=-1;
strncpy(status, "CANCEL", statussize - 1);
if (f)
ast_frfree(f);
return NULL;
}
if (f && (f->frametype == AST_FRAME_DTMF) && *allowdisconnect_out &&
@@ -391,13 +404,18 @@ static struct ast_channel *wait_for_answer(struct ast_channel *in, struct localu
ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass);
*to=0;
strcpy(status, "CANCEL");
ast_frfree(f);
return NULL;
}
if (single && f && (f->frametype == AST_FRAME_HTML) && !outgoing->noforwardhtml)
ast_channel_sendhtml(outgoing->chan, f->subclass, f->data, f->datalen);
if (single && ((f->frametype == AST_FRAME_VOICE) || (f->frametype == AST_FRAME_DTMF))) {
if (ast_write(outgoing->chan, f))
ast_log(LOG_WARNING, "Unable to forward voice\n");
ast_frfree(f);
}
ast_frfree(f);
}
if (!*to && (option_verbose > 2))
ast_verbose( VERBOSE_PREFIX_3 "Nobody picked up in %d ms\n", orig);
@@ -421,6 +439,7 @@ static int dial_exec(struct ast_channel *chan, void *data)
int allowredir_out=0;
int allowdisconnect_in=0;
int allowdisconnect_out=0;
int noforwardhtml=0;
int hasmacro = 0;
int privacy=0;
int announce=0;
@@ -726,6 +745,9 @@ static int dial_exec(struct ast_channel *chan, void *data)
if (strchr(transfer, 'f'))
tmp->forcecallerid = 1;
else tmp->forcecallerid = 0;
if (url)
tmp->noforwardhtml = 1;
else tmp->noforwardhtml = 0;
}
strncpy(numsubst, number, sizeof(numsubst)-1);
/* If we're dialing by extension, look at the extension to know what to dial */
@@ -746,6 +768,7 @@ static int dial_exec(struct ast_channel *chan, void *data)
cur = rest;
continue;
}
pbx_builtin_setvar_helper(tmp->chan, "DIALEDPEERNUMBER", numsubst);
if (!ast_strlen_zero(tmp->chan->call_forward)) {
char tmpchan[256]="";
char *stuff;
@@ -879,7 +902,7 @@ static int dial_exec(struct ast_channel *chan, void *data)
strncpy(status, "CHANUNAVAIL", sizeof(status) - 1);
time(&start_time);
peer = wait_for_answer(chan, outgoing, &to, &allowredir_in, &allowredir_out, &allowdisconnect_in, &allowdisconnect_out, &sentringing, status, sizeof(status));
peer = wait_for_answer(chan, outgoing, &to, &allowredir_in, &allowredir_out, &allowdisconnect_in, &allowdisconnect_out, &sentringing, &noforwardhtml, status, sizeof(status));
if (!peer) {
if (to)
@@ -908,8 +931,11 @@ static int dial_exec(struct ast_channel *chan, void *data)
ast_cdr_setdestchan(chan->cdr, peer->name);
if (peer->name)
pbx_builtin_setvar_helper(chan, "DIALEDPEERNAME", peer->name);
if (numsubst)
pbx_builtin_setvar_helper(chan, "DIALEDPEERNUMBER", numsubst);
number = pbx_builtin_getvar_helper(peer, "DIALEDPEERNUMBER");
if (!number)
number = numsubst;
pbx_builtin_setvar_helper(chan, "DIALEDPEERNUMBER", number);
/* JDG: sendurl */
if( url && !ast_strlen_zero(url) && ast_channel_supports_html(peer) ) {
ast_log(LOG_DEBUG, "app_dial: sendurl=%s.\n", url);
@@ -1029,7 +1055,7 @@ out:
LOCAL_USER_REMOVE(u);
if((go_on>0) && (!chan->_softhangup))
if((go_on>0) && (!chan->_softhangup) && (res != AST_PBX_KEEPALIVE))
res=0;
return res;

0
apps/app_directory.c Executable file → Normal file
View File

22
apps/app_disa.c Executable file → Normal file
View File

@@ -22,6 +22,7 @@
#include <asterisk/module.h>
#include <asterisk/translate.h>
#include <asterisk/ulaw.h>
#include <asterisk/utils.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
@@ -161,7 +162,7 @@ static int disa_exec(struct ast_channel *chan, void *data)
if (!strcasecmp(tmp, "no-password"))
{;
k = 1;
k |= 1; /* We have the password */
ast_log(LOG_DEBUG, "DISA no-password login success\n");
}
gettimeofday(&lastdigittime,NULL);
@@ -173,10 +174,10 @@ static int disa_exec(struct ast_channel *chan, void *data)
gettimeofday(&now,NULL);
/* if outa time, give em reorder */
if (ms_diff(&now,&lastdigittime) >
((k) ? digittimeout : firstdigittimeout))
((k&2) ? digittimeout : firstdigittimeout))
{
ast_log(LOG_DEBUG,"DISA %s entry timeout on chan %s\n",
((k) ? "extension" : "password"),chan->name);
((k&1) ? "extension" : "password"),chan->name);
break;
}
if ((res = ast_waitfor(chan, -1) < 0)) {
@@ -211,13 +212,15 @@ static int disa_exec(struct ast_channel *chan, void *data)
j = f->subclass; /* save digit */
ast_frfree(f);
if (i == 0)
{
k|=2; /* We have the first digit */
ast_playtones_stop(chan);
}
gettimeofday(&lastdigittime,NULL);
/* got a DTMF tone */
if (i < AST_MAX_EXTENSION) /* if still valid number of digits */
{
if (!k) /* if in password state */
if (!(k&1)) /* if in password state */
{
if (j == '#') /* end of password */
{
@@ -268,7 +271,7 @@ static int disa_exec(struct ast_channel *chan, void *data)
ast_log(LOG_DEBUG,"DISA on chan %s password is good\n",chan->name);
play_dialtone(chan);
k = 1;
k|=1; /* In number mode */
i = 0; /* re-set buffer pointer */
exten[sizeof(acctcode)] = 0;
strncpy(acctcode,exten, sizeof(acctcode) - 1);
@@ -280,7 +283,7 @@ static int disa_exec(struct ast_channel *chan, void *data)
exten[i++] = j; /* save digit */
exten[i] = 0;
if (!k) continue; /* if getting password, continue doing it */
if (!(k&1)) continue; /* if getting password, continue doing it */
/* if this exists */
if (ast_ignore_pattern(ourcontext, exten)) {
@@ -299,7 +302,7 @@ static int disa_exec(struct ast_channel *chan, void *data)
}
}
if (k && ast_exists_extension(chan,ourcontext,exten,1, chan->callerid))
if ((k==3) && (ast_exists_extension(chan,ourcontext,exten,1, chan->callerid)))
{
ast_playtones_stop(chan);
/* We're authenticated and have a valid extension */
@@ -310,7 +313,8 @@ static int disa_exec(struct ast_channel *chan, void *data)
}
strncpy(chan->exten, exten, sizeof(chan->exten) - 1);
strncpy(chan->context, ourcontext, sizeof(chan->context) - 1);
strncpy(chan->accountcode, acctcode, sizeof(chan->accountcode) - 1);
if (!ast_strlen_zero(acctcode))
strncpy(chan->accountcode, acctcode, sizeof(chan->accountcode) - 1);
chan->priority = 0;
ast_cdr_init(chan->cdr,chan);
LOCAL_USER_REMOVE(u);

0
apps/app_echo.c Executable file → Normal file
View File

0
apps/app_enumlookup.c Executable file → Normal file
View File

4
apps/app_eval.c Executable file → Normal file
View File

@@ -31,10 +31,10 @@ static char *tdesc = "Reevaluates strings";
static char *app_eval = "Eval";
static char *eval_synopsis = "Eval(newvar=somestring)";
static char *eval_synopsis = "Evaluates a string";
static char *eval_descrip =
"Eval(newvar=somestring)\n"
"Usage: Eval(newvar=somestring)\n"
" Normally Asterisk evaluates variables inline. But what if you want to\n"
"store variable offsets in a database, to be evaluated later? Eval is\n"
"the answer, by allowing a string to be evaluated twice in the dialplan,\n"

0
apps/app_exec.c Executable file → Normal file
View File

7
apps/app_festival.c Executable file → Normal file
View File

@@ -131,7 +131,6 @@ static int send_waveform_to_fd(char *waveform, int length, int fd) {
#endif
write(fd,waveform,length);
write(fd,"a",1);
close(fd);
exit(0);
}
@@ -305,9 +304,9 @@ static int festival_exec(struct ast_channel *chan, void *vdata)
if (!(festivalcommand = ast_variable_retrieve(cfg, "general", "festivalcommand"))) {
festivalcommand = "(tts_textasterisk \"%s\" 'file)(quit)\n";
}
ast_destroy(cfg);
if (!vdata || ast_strlen_zero(vdata)) {
ast_log(LOG_WARNING, "festival requires an argument (text)\n");
ast_destroy(cfg);
return -1;
}
strncpy(data, vdata, sizeof(data) - 1);
@@ -325,6 +324,7 @@ static int festival_exec(struct ast_channel *chan, void *vdata)
if (fd < 0) {
ast_log(LOG_WARNING,"festival_client: can't get socket\n");
ast_destroy(cfg);
return -1;
}
memset(&serv_addr, 0, sizeof(serv_addr));
@@ -333,6 +333,7 @@ static int festival_exec(struct ast_channel *chan, void *vdata)
serverhost = ast_gethostbyname(host, &ahp);
if (serverhost == (struct hostent *)0) {
ast_log(LOG_WARNING,"festival_client: gethostbyname failed\n");
ast_destroy(cfg);
return -1;
}
memmove(&serv_addr.sin_addr,serverhost->h_addr, serverhost->h_length);
@@ -342,6 +343,7 @@ static int festival_exec(struct ast_channel *chan, void *vdata)
if (connect(fd, (struct sockaddr *)&serv_addr, sizeof(serv_addr)) != 0) {
ast_log(LOG_WARNING,"festival_client: connect to server failed\n");
ast_destroy(cfg);
return -1;
}
@@ -444,6 +446,7 @@ static int festival_exec(struct ast_channel *chan, void *vdata)
}
} while (strcmp(ack,"OK\n") != 0);
close(fd);
ast_destroy(cfg);
LOCAL_USER_REMOVE(u);
return res;

0
apps/app_flash.c Executable file → Normal file
View File

8
apps/app_forkcdr.c Executable file → Normal file
View File

@@ -20,10 +20,11 @@
#include <string.h>
#include <pthread.h>
static char *tdesc = "Fork The CDR into 2 seperate entities.";
static char *tdesc = "Fork The CDR into 2 separate entities.";
static char *app = "ForkCDR";
static char *synopsis =
"Forks the Call Data Record\n"
"Forks the Call Data Record";
static char *descrip =
" ForkCDR(): Causes the Call Data Record to fork an additional\n"
"cdr record starting from the time of the fork call\n";
@@ -36,6 +37,7 @@ LOCAL_USER_DECL;
static void ast_cdr_clone(struct ast_cdr *cdr) {
struct ast_cdr *newcdr = ast_cdr_alloc();
memcpy(newcdr,cdr,sizeof(struct ast_cdr));
newcdr->next = NULL;
ast_cdr_append(cdr,newcdr);
gettimeofday(&newcdr->start, NULL);
memset(&newcdr->answer, 0, sizeof(newcdr->answer));
@@ -68,7 +70,7 @@ int unload_module(void)
int load_module(void)
{
return ast_register_application(app, forkcdr_exec, synopsis, tdesc);
return ast_register_application(app, forkcdr_exec, synopsis, descrip);
}
char *description(void)

10
apps/app_getcpeid.c Executable file → Normal file
View File

@@ -3,9 +3,9 @@
*
* Execute arbitrary system commands
*
* Copyright (C) 1999, Mark Spencer
* Copyright (C) 1999-2005, Digium
*
* Mark Spencer <markster@linux-support.net>
* Mark Spencer <markster@digium.com>
*
* This program is free software, distributed under the terms of
* the GNU General Public License
@@ -31,9 +31,9 @@ static char *app = "GetCPEID";
static char *synopsis = "Get ADSI CPE ID";
static char *descrip =
" GetCPEID: Obtains and displays CPE ID and other information in order to\n"
"properly setup zapata.conf for on-hook operations. Returns -1 on hanup\n"
"only.";
" GetCPEID: Obtains and displays ADSI CPE ID and other information in order\n"
"to properly setup zapata.conf for on-hook operations.\n"
"Returns -1 on hangup only.\n";
STANDARD_LOCAL_USER;

0
apps/app_groupcount.c Executable file → Normal file
View File

30
apps/app_hasnewvoicemail.c Executable file → Normal file
View File

@@ -38,6 +38,7 @@
#include <asterisk/pbx.h>
#include <asterisk/module.h>
#include <asterisk/lock.h>
#include <asterisk/utils.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
@@ -70,7 +71,7 @@ static int hasvoicemail_exec(struct ast_channel *chan, void *data)
{
int res=0;
struct localuser *u;
char vmpath[256], *input, *varname = NULL, *vmbox, *vmfolder = "INBOX", *context = "default";
char vmpath[256], *temps, *input, *varname = NULL, *vmbox, *vmfolder = "INBOX", *context = "default";
DIR *vmdir;
struct dirent *vment;
int vmcount = 0;
@@ -83,21 +84,22 @@ static int hasvoicemail_exec(struct ast_channel *chan, void *data)
input = ast_strdupa((char *)data);
if (input) {
if ((vmbox = strsep(&input,":")))
if ((vmfolder = strsep(&input,"|")))
temps = input;
if ((temps = strsep(&input, "|"))) {
if (input && !ast_strlen_zero(input))
varname = input;
else
vmfolder = input;
else
if ((vmbox = strsep(&input,"|")))
varname = input;
else
vmbox = input;
if (index(vmbox,'@')) {
context = vmbox;
vmbox = strsep(&context,"@");
input = temps;
}
if ((temps = strsep(&input, ":"))) {
if (input && !ast_strlen_zero(input))
vmfolder = input;
input = temps;
}
if ((vmbox = strsep(&input, "@")))
if (input && !ast_strlen_zero(input))
context = input;
if (!vmbox)
vmbox = input;
snprintf(vmpath,sizeof(vmpath), "%s/voicemail/%s/%s/%s", (char *)ast_config_AST_SPOOL_DIR, context, vmbox, vmfolder);
if (!(vmdir = opendir(vmpath))) {

0
apps/app_ices.c Executable file → Normal file
View File

0
apps/app_image.c Executable file → Normal file
View File

0
apps/app_intercom.c Executable file → Normal file
View File

0
apps/app_lookupblacklist.c Executable file → Normal file
View File

0
apps/app_lookupcidname.c Executable file → Normal file
View File

3
apps/app_macro.c Executable file → Normal file
View File

@@ -140,7 +140,8 @@ static int macro_exec(struct ast_channel *chan, void *data)
while(ast_exists_extension(chan, chan->context, chan->exten, chan->priority, chan->callerid)) {
if ((res = ast_spawn_extension(chan, chan->context, chan->exten, chan->priority, chan->callerid))) {
/* Something bad happened, or a hangup has been requested. */
if (((res >= '0') && (res <= '9')) || ((res >= 'A') && (res <= 'F'))) {
if (((res >= '0') && (res <= '9')) || ((res >= 'A') && (res <= 'F')) ||
(res == '*') || (res == '#')) {
/* Just return result as to the previous application as if it had been dialed */
ast_log(LOG_DEBUG, "Oooh, got something to jump out with ('%c')!\n", res);
break;

83
apps/app_meetme.c Executable file → Normal file
View File

@@ -482,9 +482,39 @@ static int confnonzero(void *ptr)
return res;
}
/* Remove the conference from the list and free it.
We assume that this was called while holding conflock. */
static int conf_free(struct ast_conference *conf)
{
struct ast_conference *prev = NULL, *cur = confs;
while(cur) {
if (cur == conf) {
if (prev)
prev->next = conf->next;
else
confs = conf->next;
break;
}
prev = cur;
cur = cur->next;
}
if (!cur)
ast_log(LOG_WARNING, "Conference not found\n");
if (conf->chan)
ast_hangup(conf->chan);
else
close(conf->fd);
free(conf);
return 0;
}
static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int confflags)
{
struct ast_conference *prev=NULL, *cur;
struct ast_conf_user *user = malloc(sizeof(struct ast_conf_user));
int fd;
struct zt_confinfo ztc;
@@ -524,7 +554,9 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
memset(user, 0, sizeof(struct ast_conf_user));
user->user_no = 0; /* User number 0 means starting up user! (dead - not in the list!) */
time(&user->jointime);
if (conf->locked) {
/* Sorry, but this confernce is locked! */
if (!ast_streamfile(chan, "conf-locked", chan->language))
@@ -557,7 +589,6 @@ static int conf_run(struct ast_channel *chan, struct ast_conference *conf, int c
conf->lastuser = user;
}
}
strncpy(user->usrvalue, "test", sizeof(user->usrvalue) - 1);
user->chan = chan;
user->userflags = confflags;
user->adminflags = 0;
@@ -990,31 +1021,12 @@ outrun:
"Meetme: %s\r\n"
"Usernum: %i\r\n",
chan->name, chan->uniqueid, conf->confno, user->user_no);
prev = NULL;
conf->users--;
if (confflags & CONFFLAG_MARKEDUSER)
conf->markedusers--;
cur = confs;
if (!conf->users) {
/* No more users -- close this one out */
while(cur) {
if (cur == conf) {
if (prev)
prev->next = conf->next;
else
confs = conf->next;
break;
}
prev = cur;
cur = cur->next;
}
if (!cur)
ast_log(LOG_WARNING, "Conference not found\n");
if (conf->chan)
ast_hangup(conf->chan);
else
close(conf->fd);
free(conf);
conf_free(conf);
} else {
/* Remove the user struct */
if (user == conf->firstuser) {
@@ -1043,10 +1055,10 @@ outrun:
else
ast_log(LOG_ERROR, "Bad! Bad! Bad! user->prevuser is NULL but we're not the beginning!\n");
}
/* Return the number of seconds the user was in the conf */
snprintf(meetmesecs, sizeof(meetmesecs), "%i", (int) (user->jointime - time(NULL)));
pbx_builtin_setvar_helper(chan, "MEETMESECS", meetmesecs);
}
/* Return the number of seconds the user was in the conf */
snprintf(meetmesecs, sizeof(meetmesecs), "%i", (int) (time(NULL) - user->jointime));
pbx_builtin_setvar_helper(chan, "MEETMESECS", meetmesecs);
}
free(user);
ast_mutex_unlock(&conflock);
@@ -1298,7 +1310,7 @@ static int conf_exec(struct ast_channel *chan, void *data)
if (!found) {
/* At this point, we have a confno_tmp (static conference) that is empty */
if ((empty_no_pin && ((!stringp) || (stringp && (stringp[0] == '\0')))) || (!empty_no_pin)) {
/* Case 1: empty_no_pin and pin is nonexistant (NULL)
/* Case 1: empty_no_pin and pin is nonexistent (NULL)
* Case 2: empty_no_pin and pin is blank (but not NULL)
* Case 3: not empty_no_pin
*/
@@ -1399,8 +1411,15 @@ static int conf_exec(struct ast_channel *chan, void *data)
confno[0] = '\0';
}
} else {
/* failed when getting the pin */
res = -1;
allowretry = 0;
/* see if we need to get rid of the conference */
ast_mutex_lock(&conflock);
if (!cnf->users) {
conf_free(cnf);
}
ast_mutex_unlock(&conflock);
break;
}
@@ -1419,8 +1438,9 @@ static int conf_exec(struct ast_channel *chan, void *data)
}
}
} while (allowretry);
/* Do the conference */
LOCAL_USER_REMOVE(u);
return res;
}
@@ -1454,14 +1474,17 @@ static int admin_exec(struct ast_channel *chan, void *data) {
command = strsep(&params, "|");
caller = strsep(&params, "|");
ast_mutex_lock(&conflock);
if (!command) {
ast_log(LOG_WARNING, "MeetmeAdmin requires a command!\n");
ast_mutex_unlock(&conflock);
return -1;
}
cnf = confs;
while (cnf) {
if (strcmp(cnf->confno, conf) == 0)
break;
cnf = cnf->next;
}
ast_mutex_unlock(&conflock);
if (caller)
user = find_user(cnf, caller);

0
apps/app_milliwatt.c Executable file → Normal file
View File

0
apps/app_mp3.c Executable file → Normal file
View File

0
apps/app_nbscat.c Executable file → Normal file
View File

0
apps/app_osplookup.c Executable file → Normal file
View File

4
apps/app_parkandannounce.c Executable file → Normal file
View File

@@ -41,7 +41,7 @@ static char *synopsis = "Park and Announce";
static char *descrip =
" ParkAndAnnounce(announce:template|timeout|dial|[return_context]):\n"
"Park a call into the parkinglot and announce the call over the console.\n"
"announce template: colon seperated list of files to announce, the word PARKED\n"
"announce template: colon separated list of files to announce, the word PARKED\n"
" will be replaced by a say_digits of the ext the call is parked in\n"
"timeout: time in seconds before the call returns into the return context.\n"
"dial: The app_dial style resource to call to make the announcement. Console/dsp calls the console.\n"
@@ -94,7 +94,7 @@ static int parkandannounce_exec(struct ast_channel *chan, void *data)
}
dial=strsep(&s, "|");
if(!dial) {
ast_log(LOG_WARNING, "PARK: A dial resouce must be specified i.e: Console/dsp or Zap/g1/5551212\n");
ast_log(LOG_WARNING, "PARK: A dial resource must be specified i.e: Console/dsp or Zap/g1/5551212\n");
free(orig_s);
return -1;
} else {

0
apps/app_playback.c Executable file → Normal file
View File

0
apps/app_privacy.c Executable file → Normal file
View File

2
apps/app_qcall.c Executable file → Normal file
View File

@@ -317,7 +317,7 @@ static void *qcall_do(void *arg)
extstr,context,channel->name);
if (strlen(ident)) {
strncat(ident,"-ok", sizeof(ident) - strlen(ident) - 1);
/* if file existant, play it */
/* if file existent, play it */
if (!ast_streamfile(channel,ident,0))
{
ast_waitstream(channel,"");

113
apps/app_queue.c Executable file → Normal file
View File

@@ -96,7 +96,7 @@ static char *descrip =
"Queues an incoming call in a particular call queue as defined in queues.conf.\n"
" This application returns -1 if the originating channel hangs up, or if the\n"
"call is bridged and either of the parties in the bridge terminate the call.\n"
"Returns 0 if the queue is full, nonexistant, or has no members.\n"
"Returns 0 if the queue is full, nonexistent, or has no members.\n"
"The option string may contain zero or more of the following characters:\n"
" 't' -- allow the called user transfer the calling user\n"
" 'T' -- to allow the calling user to transfer the call.\n"
@@ -545,14 +545,17 @@ static void hanguptree(struct localuser *outgoing, struct ast_channel *exception
}
}
static int ring_entry(struct queue_ent *qe, struct localuser *tmp)
static int ring_entry(struct queue_ent *qe, struct localuser *tmp, int *busies)
{
int res;
struct ast_var_t *current, *newvar;
struct varshead *headp, *newheadp;
if (qe->parent->wrapuptime && (time(NULL) - tmp->lastcall < qe->parent->wrapuptime)) {
ast_log(LOG_DEBUG, "Wrapuptime not yet expired for %s/%s\n", tmp->tech, tmp->numsubst);
if (qe->chan->cdr)
ast_cdr_busy(qe->chan->cdr);
tmp->stillgoing = 0;
(*busies)++;
return 0;
}
/* Request the peer */
@@ -564,8 +567,29 @@ static int ring_entry(struct queue_ent *qe, struct localuser *tmp)
if (qe->chan->cdr)
ast_cdr_busy(qe->chan->cdr);
tmp->stillgoing = 0;
(*busies)++;
return 0;
}
/* If creating a SIP channel, look for a variable called */
/* VXML_URL in the calling channel and copy it to the */
/* new channel. */
/* Check for ALERT_INFO in the SetVar list. This is for */
/* SIP distinctive ring as per the RFC. For Cisco 7960s, */
/* SetVar(ALERT_INFO=<x>) where x is an integer value 1-5. */
/* However, the RFC says it should be a URL. -km- */
headp=&qe->chan->varshead;
AST_LIST_TRAVERSE(headp,current,entries) {
if (!strcasecmp(ast_var_name(current),"VXML_URL") ||
!strcasecmp(ast_var_name(current), "ALERT_INFO") ||
!strcasecmp(ast_var_name(current), "OSPTOKEN") ||
!strcasecmp(ast_var_name(current), "OSPHANDLE"))
{
newvar=ast_var_assign(ast_var_name(current),ast_var_value(current));
newheadp=&tmp->chan->varshead;
AST_LIST_INSERT_HEAD(newheadp,newvar,entries);
}
}
tmp->chan->appl = "AppQueue";
tmp->chan->data = "(Outgoing Line)";
tmp->chan->whentohangup = 0;
@@ -594,6 +618,7 @@ static int ring_entry(struct queue_ent *qe, struct localuser *tmp)
ast_hangup(tmp->chan);
tmp->chan = NULL;
tmp->stillgoing = 0;
(*busies)++;
return 0;
} else {
if (qe->parent->eventwhencalled) {
@@ -611,10 +636,10 @@ static int ring_entry(struct queue_ent *qe, struct localuser *tmp)
if (option_verbose > 2)
ast_verbose(VERBOSE_PREFIX_3 "Called %s/%s\n", tmp->tech, tmp->numsubst);
}
return 0;
return 1;
}
static int ring_one(struct queue_ent *qe, struct localuser *outgoing)
static int ring_one(struct queue_ent *qe, struct localuser *outgoing, int *busies)
{
struct localuser *cur;
struct localuser *best;
@@ -636,9 +661,9 @@ static int ring_one(struct queue_ent *qe, struct localuser *outgoing)
/* Ring everyone who shares this best metric (for ringall) */
cur = outgoing;
while(cur) {
if (cur->stillgoing && !cur->chan && (cur->metric == bestmetric)) {
if (cur->stillgoing && !cur->chan && (cur->metric <= bestmetric)) {
ast_log(LOG_DEBUG, "(Parallel) Trying '%s/%s' with metric %d\n", cur->tech, cur->numsubst, cur->metric);
ring_entry(qe, cur);
ring_entry(qe, cur, busies);
}
cur = cur->next;
}
@@ -647,7 +672,7 @@ static int ring_one(struct queue_ent *qe, struct localuser *outgoing)
if (option_debug)
ast_log(LOG_DEBUG, "Trying '%s/%s' with metric %d\n",
best->tech, best->numsubst, best->metric);
ring_entry(qe, best);
ring_entry(qe, best, busies);
}
}
} while (best && !best->chan);
@@ -711,15 +736,36 @@ static int valid_exit(struct queue_ent *qe, char digit)
#define AST_MAX_WATCHERS 256
static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser *outgoing, int *to, int *allowredir_in, int *allowredir_out, int *allowdisconnect_in, int *allowdisconnect_out, char *digit)
#define BUILD_STATS do { \
o = outgoing; \
found = -1; \
pos = 1; \
numlines = 0; \
watchers[0] = in; \
while(o) { \
/* Keep track of important channels */ \
if (o->stillgoing) { \
stillgoing = 1; \
if (o->chan) { \
watchers[pos++] = o->chan; \
found = 1; \
} \
} \
o = o->next; \
numlines++; \
} \
} while(0)
static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser *outgoing, int *to, int *allowredir_in, int *allowredir_out, int *allowdisconnect_in, int *allowdisconnect_out, char *digit, int prebusies)
{
char *queue = qe->parent->name;
struct localuser *o;
int found;
int numlines;
int sentringing = 0;
int numbusies = 0;
int numbusies = prebusies;
int orig = *to;
int stillgoing = 0;
struct ast_frame *f;
struct localuser *peer = NULL;
struct ast_channel *watchers[AST_MAX_WATCHERS];
@@ -728,25 +774,18 @@ static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser
struct ast_channel *in = qe->chan;
while(*to && !peer) {
o = outgoing;
found = -1;
pos = 1;
numlines = 0;
watchers[0] = in;
while(o) {
/* Keep track of important channels */
if (o->stillgoing && o->chan) {
watchers[pos++] = o->chan;
found = 1;
}
o = o->next;
numlines++;
BUILD_STATS;
if ((found < 0) && stillgoing && !qe->parent->strategy) {
/* On "ringall" strategy we only move to the next penalty level
when *all* ringing phones are done in the current penalty level */
ring_one(qe, outgoing, &numbusies);
BUILD_STATS;
}
if (found < 0) {
if (numlines == numbusies) {
ast_log(LOG_DEBUG, "Everyone is busy at this time\n");
} else {
ast_log(LOG_NOTICE, "No one is answering queue '%s'\n", queue);
ast_log(LOG_NOTICE, "No one is answering queue '%s' (%d/%d)\n", queue, numlines, numbusies);
}
*to = 0;
return NULL;
@@ -790,7 +829,7 @@ static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser
ast_hangup(o->chan);
o->chan = NULL;
if (qe->parent->strategy)
ring_one(qe, outgoing);
ring_one(qe, outgoing, &numbusies);
numbusies++;
break;
case AST_CONTROL_CONGESTION:
@@ -802,7 +841,7 @@ static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser
ast_hangup(o->chan);
o->chan = NULL;
if (qe->parent->strategy)
ring_one(qe, outgoing);
ring_one(qe, outgoing, &numbusies);
numbusies++;
break;
case AST_CONTROL_RINGING:
@@ -828,7 +867,7 @@ static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser
ast_hangup(o->chan);
o->chan = NULL;
if (qe->parent->strategy)
ring_one(qe, outgoing);
ring_one(qe, outgoing, &numbusies);
}
}
o = o->next;
@@ -844,21 +883,26 @@ static struct localuser *wait_for_answer(struct queue_ent *qe, struct localuser
if (!f || ((f->frametype == AST_FRAME_CONTROL) && (f->subclass == AST_CONTROL_HANGUP))) {
/* Got hung up */
*to=-1;
if (f)
ast_frfree(f);
return NULL;
}
if (f && (f->frametype == AST_FRAME_DTMF) && allowdisconnect_out && (f->subclass == '*')) {
if ((f->frametype == AST_FRAME_DTMF) && allowdisconnect_out && (f->subclass == '*')) {
if (option_verbose > 3)
ast_verbose(VERBOSE_PREFIX_3 "User hit %c to disconnect call.\n", f->subclass);
*to=0;
ast_frfree(f);
return NULL;
}
if (f && (f->frametype == AST_FRAME_DTMF) && (f->subclass != '*') && valid_exit(qe, f->subclass)) {
if ((f->frametype == AST_FRAME_DTMF) && (f->subclass != '*') && valid_exit(qe, f->subclass)) {
if (option_verbose > 3)
ast_verbose(VERBOSE_PREFIX_3 "User pressed digit: %c", f->subclass);
ast_verbose(VERBOSE_PREFIX_3 "User pressed digit: %c\n", f->subclass);
*to=0;
*digit=f->subclass;
ast_frfree(f);
return NULL;
}
ast_frfree(f);
}
if (!*to && (option_verbose > 2))
ast_verbose( VERBOSE_PREFIX_3 "Nobody picked up in %d ms\n", orig);
@@ -1024,6 +1068,7 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri
struct member *member;
int res = 0, bridge = 0;
int zapx = 2;
int numbusies = 0;
int x=0;
char *announce = NULL;
char digit = 0;
@@ -1106,9 +1151,9 @@ static int try_calling(struct queue_ent *qe, char *options, char *announceoverri
to = qe->parent->timeout * 1000;
else
to = -1;
ring_one(qe, outgoing);
ring_one(qe, outgoing, &numbusies);
ast_mutex_unlock(&qe->parent->lock);
lpeer = wait_for_answer(qe, outgoing, &to, &allowredir_in, &allowredir_out, &allowdisconnect_in, &allowdisconnect_out, &digit);
lpeer = wait_for_answer(qe, outgoing, &to, &allowredir_in, &allowredir_out, &allowdisconnect_in, &allowdisconnect_out, &digit, numbusies);
ast_mutex_lock(&qe->parent->lock);
if (qe->parent->strategy == QUEUE_STRATEGY_RRMEMORY) {
store_next(qe, outgoing);
@@ -1638,6 +1683,7 @@ check_turns:
/* Leave if we have exceeded our queuetimeout */
if (qe.queuetimeout && ( (time(NULL) - qe.start) >= qe.queuetimeout) ) {
res = 0;
ast_queue_log(queuename, chan->uniqueid, "NONE", "EXITWITHTIMEOUT", "%d", qe.pos);
break;
}
@@ -1665,6 +1711,7 @@ check_turns:
/* Leave if we have exceeded our queuetimeout */
if (qe.queuetimeout && ( (time(NULL) - qe.start) >= qe.queuetimeout) ) {
res = 0;
ast_queue_log(queuename, chan->uniqueid, "NONE", "EXITWITHTIMEOUT", "%d", qe.pos);
break;
}
@@ -1704,7 +1751,7 @@ check_turns:
}
}
/* Don't allow return code > 0 */
if (res > 0 && res != AST_PBX_KEEPALIVE) {
if ((res == 0) || (res > 0 && res != AST_PBX_KEEPALIVE)) {
res = 0;
if (ringing) {
ast_indicate(chan, -1);
@@ -1831,7 +1878,7 @@ static void reload_queues(void)
q->members = cur;
prev = cur;
}
} else if (!strcasecmp(var->name, "music")) {
} else if (!strcasecmp(var->name, "music") || !strcasecmp(var->name, "musiconhold")) {
strncpy(q->moh, var->value, sizeof(q->moh) - 1);
} else if (!strcasecmp(var->name, "announce")) {
strncpy(q->announce, var->value, sizeof(q->announce) - 1);

1
apps/app_random.c Executable file → Normal file
View File

@@ -106,7 +106,6 @@ int unload_module(void)
int load_module(void)
{
srandom((unsigned int)getpid() + (unsigned int)time(NULL));
return ast_register_application(app_random, random_exec, random_synopsis, random_descrip);
}

3
apps/app_read.c Executable file → Normal file
View File

@@ -106,8 +106,9 @@ static int read_exec(struct ast_channel *chan, void *data)
if (res > -1) {
pbx_builtin_setvar_helper(chan, varname, tmp);
ast_verbose(VERBOSE_PREFIX_3 "User entered '%s'\n", tmp);
res = 0;
} else {
ast_verbose(VERBOSE_PREFIX_3 "User entered nothing\n");
ast_verbose(VERBOSE_PREFIX_3 "User disconnected\n");
}
}
LOCAL_USER_REMOVE(u);

2
apps/app_record.c Executable file → Normal file
View File

@@ -301,7 +301,7 @@ static int record_exec(struct ast_channel *chan, void *data)
ast_log(LOG_WARNING, "Could not answer channel '%s'\n", chan->name);
LOCAL_USER_REMOVE(u);
if (silence > 0) {
if ((silence > 0) && rfmt) {
res = ast_set_read_format(chan, rfmt);
if (res)
ast_log(LOG_WARNING, "Unable to restore read format on '%s'\n", chan->name);

0
apps/app_rpt.c Executable file → Normal file
View File

0
apps/app_sayunixtime.c Executable file → Normal file
View File

0
apps/app_senddtmf.c Executable file → Normal file
View File

0
apps/app_sendtext.c Executable file → Normal file
View File

0
apps/app_setcallerid.c Executable file → Normal file
View File

0
apps/app_setcdruserfield.c Executable file → Normal file
View File

0
apps/app_setcidname.c Executable file → Normal file
View File

0
apps/app_setcidnum.c Executable file → Normal file
View File

0
apps/app_skel.c Executable file → Normal file
View File

14
apps/app_sms.c Executable file → Normal file
View File

@@ -24,8 +24,10 @@
#include <unistd.h>
#include <errno.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <dirent.h>
#include <ctype.h>
#include "../astconf.h"
/* ToDo */
/* When acting as SC and answering, should check for messages and send instead of sending EST as first packet */
@@ -36,6 +38,9 @@
static unsigned char message_ref; /* arbitary message ref */
static char log_file[255];
static char spool_dir[255];
static char *tdesc = "SMS/PSTN handler";
static char *app = "SMS";
@@ -315,7 +320,7 @@ sms_log (sms_t * h, char status)
{ /* log the output, and remove file */
if (*h->oa || *h->da)
{
int o = open ("/var/log/asterisk/sms", O_CREAT | O_APPEND | O_WRONLY, 0666);
int o = open (log_file, O_CREAT | O_APPEND | O_WRONLY, 0666);
if (o >= 0)
{
char line[1000], *p;
@@ -517,7 +522,7 @@ sms_writefile (sms_t * h)
char fn2[200] = "";
FILE *o;
strncpy(fn, "/var/spool/asterisk/sms", sizeof(fn) - 1);
strncpy(fn, spool_dir, sizeof(fn) - 1);
mkdir (fn, 0777); /* ensure it exists */
snprintf(fn + strlen(fn), sizeof(fn) - strlen(fn), "/%s.%s", h->smsc ? "me-sc" : "sc-me", h->queue);
mkdir (fn, 0777); /* ensure it exists */
@@ -689,7 +694,7 @@ sms_nextoutgoing (sms_t * h)
DIR *d;
char more = 0;
strncpy(fn, "/var/spool/asterisk/sms", sizeof(fn) - 1);
strncpy(fn, spool_dir, sizeof(fn) - 1);
mkdir(fn, 0777); /* ensure it exists */
snprintf(fn + strlen (fn), sizeof(fn) - strlen(fn), "/%s.%s", h->smsc ? "sc-me" : "me-sc", h->queue);
mkdir (fn, 0777); /* ensure it exists */
@@ -769,6 +774,7 @@ sms_nextoutgoing (sms_t * h)
{ /* no message */
h->omsg[0] = 0x94; /* SMS_REL */
h->omsg[1] = 0;
h->hangup = 1;
sms_messagetx (h);
}
}
@@ -1204,6 +1210,8 @@ load_module (void)
for (p = 0; p < 128; p++)
sms8to7[sms7to8[p]] = p;
}
snprintf(log_file, sizeof(log_file), "%s/sms", ast_config_AST_LOG_DIR);
snprintf(spool_dir, sizeof(spool_dir), "%s/sms", ast_config_AST_SPOOL_DIR);
return ast_register_application (app, sms_exec, synopsis, descrip);
}

0
apps/app_softhangup.c Executable file → Normal file
View File

2
apps/app_sql_postgres.c Executable file → Normal file
View File

@@ -106,8 +106,6 @@ STANDARD_LOCAL_USER;
LOCAL_USER_DECL;
extern void pbx_builtin_setvar_helper(struct ast_channel *chan, char *name, char *value);
#define AST_PGSQL_ID_DUMMY 0
#define AST_PGSQL_ID_CONNID 1
#define AST_PGSQL_ID_RESID 2

0
apps/app_striplsd.c Executable file → Normal file
View File

0
apps/app_substring.c Executable file → Normal file
View File

0
apps/app_system.c Executable file → Normal file
View File

0
apps/app_talkdetect.c Executable file → Normal file
View File

13
apps/app_test.c Executable file → Normal file
View File

@@ -1,7 +1,7 @@
/*
* Asterisk -- A telephony toolkit for Linux.
*
* Applictions connected with CDR engine
* Applications to test connection and produce report in text file
*
* Copyright (C) 2004, Digium, Inc.
*
@@ -14,6 +14,7 @@
#include <sys/types.h>
#include <asterisk/channel.h>
#include <asterisk/options.h>
#include <asterisk/module.h>
#include <asterisk/logger.h>
#include <asterisk/lock.h>
@@ -29,13 +30,15 @@
static char *tdesc = "Interface Test Application";
static char *tests_descrip = "TestServer(): Perform test server function and write call report"
"Results stored in /var/log/asterisk/testreports/<testid>.txt";
static char *tests_descrip =
"TestServer(): Perform test server function and write call report.\n"
"Results stored in /var/log/asterisk/testreports/<testid>-server.txt";
static char *tests_app = "TestServer";
static char *tests_synopsis = "Execute Interface Test Server";
static char *testc_descrip = "TestClient(testid): Executes test client with given testid.\n"
"Results stored in /var/log/asterisk/testreports/<testid>.txt";
static char *testc_descrip =
"TestClient(testid): Executes test client with given testid.\n"
"Results stored in /var/log/asterisk/testreports/<testid>-client.txt";
static char *testc_app = "TestClient";
static char *testc_synopsis = "Execute Interface Test Client";

0
apps/app_transfer.c Executable file → Normal file
View File

0
apps/app_txtcidname.c Executable file → Normal file
View File

0
apps/app_url.c Executable file → Normal file
View File

6
apps/app_userevent.c Executable file → Normal file
View File

@@ -54,22 +54,22 @@ static int userevent_exec(struct ast_channel *chan, void *data)
}
strncpy(info, (char *)data, strlen((char *)data) + AST_MAX_EXTENSION-1);
snprintf(eventname, sizeof(eventname), "UserEvent%s", info);
eventbody = strchr(eventname, '|');
if (eventbody) {
*eventbody = '\0';
eventbody++;
}
snprintf(eventname, sizeof(eventname), "UserEvent%s", info);
LOCAL_USER_ADD(u);
if(eventbody) {
ast_log(LOG_DEBUG, "Sending user event: %s, %s\n", eventname, eventbody);
manager_event(EVENT_FLAG_CALL, eventname,
manager_event(EVENT_FLAG_USER, eventname,
"Channel: %s\r\nUniqueid: %s\r\n%s\r\n",
chan->name, chan->uniqueid, eventbody);
} else {
ast_log(LOG_DEBUG, "Sending user event: %s\n", eventname);
manager_event(EVENT_FLAG_CALL, eventname,
manager_event(EVENT_FLAG_USER, eventname,
"Channel: %s\r\nUniqueid: %s\r\n", chan->name, chan->uniqueid);
}

0
apps/app_verbose.c Executable file → Normal file
View File

437
apps/app_voicemail.c Executable file → Normal file
View File

@@ -176,8 +176,9 @@ struct vm_state {
};
static int advanced_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct vm_state *vms, int msg, int option);
static int dialout(struct ast_channel *chan, struct ast_vm_user *vmu, char *num, char *outgoing_context);
static int play_record_review(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int outsidecaller, struct ast_vm_user *vmu, int *duration);
static int play_record_review(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int outsidecaller, struct ast_vm_user *vmu, int *duration, const char *unlockdir);
static int vm_delete(char *file);
static int vm_play_folder_name(struct ast_channel *chan, char *mbox);
static char ext_pass_cmd[128];
@@ -674,7 +675,7 @@ static void vm_change_password(struct ast_vm_user *vmu, char *newpassword)
}
} else {
/* Put it back like it was */
fprintf(configout, orig);
fprintf(configout, "%s", orig);
}
}
}
@@ -695,7 +696,8 @@ static void vm_change_password_shell(struct ast_vm_user *vmu, char *newpassword)
{
char buf[255];
snprintf(buf,255,"%s %s %s %s",ext_pass_cmd,vmu->context,vmu->mailbox,newpassword);
ast_safe_system(buf);
if (!ast_safe_system(buf))
strncpy(vmu->password, newpassword, sizeof(vmu->password) - 1);
}
static int make_dir(char *dest, int len, char *context, char *ext, char *mailbox)
@@ -708,6 +710,20 @@ static int make_file(char *dest, int len, char *dir, int num)
return snprintf(dest, len, "%s/msg%04d", dir, num);
}
static int last_message_index(char *dir)
{
int x;
char fn[256];
ast_lock_path(dir);
for (x=0;x<MAXMSG;x++) {
make_file(fn, sizeof(fn), dir, x);
if (ast_fileexists(fn, NULL, NULL) < 1)
break;
}
ast_unlock_path(dir);
return x-1;
}
static int
inbuf(struct baseio *bio, FILE *fi)
{
@@ -847,7 +863,7 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *m
FILE *p=NULL;
int pfd;
char date[256];
char host[256];
char host[MAXHOSTNAMELEN] = "";
char who[256];
char bound[256];
char fname[256];
@@ -875,7 +891,7 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *m
}
}
if (p) {
gethostname(host, sizeof(host));
gethostname(host, sizeof(host)-1);
if (strchr(srcemail, '@'))
strncpy(who, srcemail, sizeof(who)-1);
else {
@@ -992,7 +1008,7 @@ static int sendmail(char *srcemail, struct ast_vm_user *vmu, int msgnum, char *m
fclose(p);
snprintf(tmp2, sizeof(tmp2), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
ast_safe_system(tmp2);
ast_log(LOG_DEBUG, "Sent mail to %s with command '%s'\n", who, mailcmd);
ast_log(LOG_DEBUG, "Sent mail to %s with command '%s'\n", vmu->email, mailcmd);
} else {
ast_log(LOG_WARNING, "Unable to launch '%s'\n", mailcmd);
return -1;
@@ -1005,7 +1021,7 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *mailbox, char
FILE *p=NULL;
int pfd;
char date[256];
char host[256];
char host[MAXHOSTNAMELEN]="";
char who[256];
char dur[256];
char tmp[80] = "/tmp/astmail-XXXXXX";
@@ -1024,7 +1040,7 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *mailbox, char
}
if (p) {
gethostname(host, sizeof(host));
gethostname(host, sizeof(host)-1);
if (strchr(srcemail, '@'))
strncpy(who, srcemail, sizeof(who)-1);
else {
@@ -1079,7 +1095,7 @@ static int sendpage(char *srcemail, char *pager, int msgnum, char *mailbox, char
fclose(p);
snprintf(tmp2, sizeof(tmp2), "( %s < %s ; rm -f %s ) &", mailcmd, tmp, tmp);
ast_safe_system(tmp2);
ast_log(LOG_DEBUG, "Sent mail to %s with command '%s'\n", who, mailcmd);
ast_log(LOG_DEBUG, "Sent page to %s with command '%s'\n", pager, mailcmd);
} else {
ast_log(LOG_WARNING, "Unable to launch '%s'\n", mailcmd);
return -1;
@@ -1242,6 +1258,7 @@ static void copy_message(struct ast_channel *chan, struct ast_vm_user *vmu, int
make_dir(fromdir, sizeof(fromdir), vmu->context, vmu->mailbox, frombox);
make_file(frompath, sizeof(frompath), fromdir, msgnum);
ast_lock_path(topath);
recipmsgnum = 0;
do {
make_file(topath, sizeof(topath), todir, recipmsgnum);
@@ -1258,7 +1275,7 @@ static void copy_message(struct ast_channel *chan, struct ast_vm_user *vmu, int
} else {
ast_log(LOG_ERROR, "Recipient mailbox %s@%s is full\n", recip->mailbox, recip->context);
}
ast_unlock_path(topath);
notify_new_message(chan, recip, recipmsgnum, duration, fmt, chan->callerid);
}
@@ -1285,7 +1302,6 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
FILE *txt;
int res = 0;
int msgnum;
int fd;
int duration = 0;
int ausemacro = 0;
int ousemacro = 0;
@@ -1359,7 +1375,7 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
strncat(ecodes, "*", sizeof(ecodes) - strlen(ecodes) - 1);
ausemacro = 1;
}
/* Play the beginning intro if desired */
if (!ast_strlen_zero(prefile)) {
if (ast_fileexists(prefile, NULL, NULL) > 0) {
@@ -1406,22 +1422,22 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
}
/* Check for a '0' here */
if (res == '0') {
transfer:
strncpy(chan->exten, "o", sizeof(chan->exten) - 1);
if (!ast_strlen_zero(vmu->exit)) {
strncpy(chan->context, vmu->exit, sizeof(chan->context) - 1);
} else if (ousemacro && !ast_strlen_zero(chan->macrocontext)) {
strncpy(chan->context, chan->macrocontext, sizeof(chan->context) - 1);
transfer:
if (vmu->operator) {
strncpy(chan->exten, "o", sizeof(chan->exten) - 1);
if (!ast_strlen_zero(vmu->exit)) {
strncpy(chan->context, vmu->exit, sizeof(chan->context) - 1);
} else if (ousemacro && !ast_strlen_zero(chan->macrocontext)) {
strncpy(chan->context, chan->macrocontext, sizeof(chan->context) - 1);
}
ast_play_and_wait(chan, "transfer");
chan->priority = 0;
free_user(vmu);
return 0;
} else {
ast_play_and_wait(chan, "vm-sorry");
return 0;
}
chan->priority = 0;
free_user(vmu);
return 0;
}
if (res >= 0) {
/* Unless we're *really* silent, try to send the beep */
res = ast_streamfile(chan, "beep", chan->language);
if (!res)
res = ast_waitstream(chan, "");
}
if (res < 0) {
free_user(vmu);
@@ -1431,6 +1447,13 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
strncpy(fmt, vmfmts, sizeof(fmt) - 1);
if (!ast_strlen_zero(fmt)) {
msgnum = 0;
if (res >= 0) {
/* Unless we're *really* silent, try to send the beep */
res = ast_streamfile(chan, "beep", chan->language);
if (!res)
res = ast_waitstream(chan, "");
}
ast_lock_path(dir);
do {
make_file(fn, sizeof(fn), dir, msgnum);
if (ast_fileexists(fn, NULL, chan->language) <= 0)
@@ -1465,22 +1488,19 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
chan->name,
chan->callerid ? chan->callerid : "Unknown",
date, (long)time(NULL));
fclose(txt);
} else
ast_log(LOG_WARNING, "Error opening text file for output\n");
res = play_record_review(chan, NULL, fn, vmmaxmessage, fmt, 1, vmu, &duration);
if (res == '0')
res = play_record_review(chan, NULL, fn, vmmaxmessage, fmt, 1, vmu, &duration, dir);
if (res == '0') {
if (txt)
fclose(txt);
goto transfer;
}
if (res > 0)
res = 0;
fd = open(txtfile, O_APPEND | O_WRONLY);
if (fd > -1) {
txt = fdopen(fd, "a");
if (txt) {
fprintf(txt, "duration=%d\n", duration);
fclose(txt);
} else
close(fd);
if (txt) {
fprintf(txt, "duration=%d\n", duration);
fclose(txt);
}
if (duration < vmminmessage) {
if (option_verbose > 2)
@@ -1505,8 +1525,10 @@ static int leave_voicemail(struct ast_channel *chan, char *ext, int silent, int
free_user(recip);
}
}
notify_new_message(chan, vmu, msgnum, duration, fmt, chan->callerid);
if (ast_fileexists(fn, NULL, NULL))
notify_new_message(chan, vmu, msgnum, duration, fmt, chan->callerid);
} else {
ast_unlock_path(dir);
res = ast_streamfile(chan, "vm-mailboxfull", chan->language);
if (!res)
res = ast_waitstream(chan, "");
@@ -1528,16 +1550,58 @@ leave_vm_out:
static int count_messages(char *dir)
{
int x;
char fn[256];
for (x=0;x<MAXMSG;x++) {
make_file(fn, sizeof(fn), dir, x);
if (ast_fileexists(fn, NULL, NULL) < 1)
break;
/* Find all .txt files - even if they are not in sequence from 0000 */
int vmcount = 0;
DIR *vmdir = NULL;
struct dirent *vment = NULL;
if ((vmdir = opendir(dir))) {
while ((vment = readdir(vmdir)))
{
if (strlen(vment->d_name) > 7 && !strncmp(vment->d_name + 7,".txt",4))
{
vmcount++;
}
}
closedir(vmdir);
}
return x;
return vmcount;
}
static void resequence_mailbox(char * dir)
{
/* we know max messages, so stop process when number is hit */
int x,dest;
char sfn[256];
char dfn[256];
char stxt[256];
char dtxt[256];
ast_lock_path(dir);
for (x=0,dest=0;x<MAXMSG;x++) {
make_file(sfn, sizeof(sfn), dir, x);
if (ast_fileexists(sfn, NULL, NULL) > 0) {
if(x != dest) {
make_file(dfn, sizeof(dfn), dir, dest);
ast_filerename(sfn,dfn,NULL);
snprintf(stxt, sizeof(stxt), "%s.txt", sfn);
snprintf(dtxt, sizeof(dtxt), "%s.txt", dfn);
rename(stxt, dtxt);
}
dest++;
}
}
ast_unlock_path(dir);
}
static int say_and_wait(struct ast_channel *chan, int num, char *language)
{
int d;
@@ -1557,19 +1621,23 @@ static int save_to_folder(char *dir, int msg, char *context, char *username, int
make_file(sfn, sizeof(sfn), dir, msg);
make_dir(ddir, sizeof(ddir), context, username, dbox);
mkdir(ddir, 0700);
ast_lock_path(ddir);
for (x=0;x<MAXMSG;x++) {
make_file(dfn, sizeof(dfn), ddir, x);
if (ast_fileexists(dfn, NULL, NULL) < 0)
break;
}
if (x >= MAXMSG)
if (x >= MAXMSG) {
ast_unlock_path(ddir);
return -1;
}
ast_filecopy(sfn, dfn, NULL);
if (strcmp(sfn, dfn)) {
snprintf(txt, sizeof(txt), "%s.txt", sfn);
snprintf(ntxt, sizeof(ntxt), "%s.txt", dfn);
copy(txt, ntxt);
}
ast_unlock_path(ddir);
return 0;
}
@@ -2076,23 +2144,10 @@ static int get_folder(struct ast_channel *chan, int start)
d = ast_play_and_wait(chan, "vm-for"); /* "for" */
if (d)
return d;
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "fr") || !strcasecmp(chan->language, "pt")) { /* Spanish, French or Portuguese syntax */
d = ast_play_and_wait(chan, "vm-messages"); /* "messages */
if (d)
return d;
snprintf(fn, sizeof(fn), "vm-%s", mbox(x)); /* Folder name */
d = ast_play_and_wait(chan, fn);
if (d)
return d;
} else { /* Default English */
snprintf(fn, sizeof(fn), "vm-%s", mbox(x)); /* Folder name */
d = ast_play_and_wait(chan, fn);
if (d)
return d;
d = ast_play_and_wait(chan, "vm-messages"); /* "messages */
if (d)
return d;
}
snprintf(fn, sizeof(fn), "vm-%s", mbox(x)); /* Folder name */
d = vm_play_folder_name(chan, fn);
if (d)
return d;
d = ast_waitfordigit(chan, 500);
if (d)
return d;
@@ -2215,7 +2270,7 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
char callerid[512];
char ext_context[256]="";
int res = 0, cmd = 0;
struct ast_vm_user *receiver, *extensions = NULL, *vmtmp = NULL, *vmfree;
struct ast_vm_user *receiver = NULL, *extensions = NULL, *vmtmp = NULL, *vmfree;
char tmp[256];
char *stringp, *s;
int saved_messages = 0, found = 0;
@@ -2275,7 +2330,7 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
snprintf(todir, sizeof(todir), "%s/voicemail/%s/%s/INBOX", (char *)ast_config_AST_SPOOL_DIR, vmtmp->context, vmtmp->mailbox);
snprintf(sys, sizeof(sys), "mkdir -p %s\n", todir);
snprintf(ext_context, sizeof(ext_context), "%s@%s", vmtmp->mailbox, vmtmp->context);
ast_log(LOG_DEBUG, sys);
ast_log(LOG_DEBUG, "%s", sys);
ast_safe_system(sys);
todircount = count_messages(todir);
@@ -2286,11 +2341,11 @@ static int forward_message(struct ast_channel *chan, char *context, char *dir, i
if (!strcasecmp(s, "wav49"))
s = "WAV";
snprintf(sys, sizeof(sys), "cp %s/msg%04d.%s %s/msg%04d.%s\n", dir, curmsg, s, todir, todircount, s);
ast_log(LOG_DEBUG, sys);
ast_log(LOG_DEBUG, "%s", sys);
ast_safe_system(sys);
}
snprintf(sys, sizeof(sys), "cp %s/msg%04d.txt %s/msg%04d.txt\n", dir, curmsg, todir, todircount);
ast_log(LOG_DEBUG, sys);
ast_log(LOG_DEBUG, "%s", sys);
ast_safe_system(sys);
snprintf(fn, sizeof(fn), "%s/msg%04d", todir,todircount);
@@ -2548,6 +2603,20 @@ static void open_mailbox(struct vm_state *vms, struct ast_vm_user *vmu,int box)
strncpy(vms->curbox, mbox(box), sizeof(vms->curbox) - 1);
make_dir(vms->curdir, sizeof(vms->curdir), vmu->context, vms->username, vms->curbox);
vms->lastmsg = count_messages(vms->curdir) - 1;
/*
The following test is needed in case sequencing gets messed up.
There appears to be more than one way to mess up sequence, so
we will not try to find all of the root causes--just fix it when
detected.
*/
if(vms->lastmsg != last_message_index(vms->curdir))
{
ast_log(LOG_NOTICE, "Resequencing Mailbox: %s\n", vms->curdir);
resequence_mailbox(vms->curdir);
}
snprintf(vms->vmbox, sizeof(vms->vmbox), "vm-%s", vms->curbox);
}
@@ -2558,6 +2627,7 @@ static void close_mailbox(struct vm_state *vms, struct ast_vm_user *vmu)
char txt[256] = "";
if (vms->lastmsg > -1) {
/* Get the deleted messages fixed */
ast_lock_path(vms->curdir);
vms->curmsg = -1;
for (x=0;x < MAXMSG;x++) {
if (!vms->deleted[x] && (strcasecmp(vms->curbox, "INBOX") || !vms->heard[x])) {
@@ -2584,13 +2654,33 @@ static void close_mailbox(struct vm_state *vms, struct ast_vm_user *vmu)
break;
vm_delete(vms->fn);
}
}
memset(vms->deleted, 0, sizeof(vms->deleted));
memset(vms->heard, 0, sizeof(vms->heard));
ast_unlock_path(vms->curdir);
}
if (vms->deleted)
memset(vms->deleted, 0, sizeof(vms->deleted));
if (vms->heard)
memset(vms->heard, 0, sizeof(vms->heard));
}
static int vm_play_folder_name(struct ast_channel *chan, char *mbox)
{
int cmd;
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "fr") || !strcasecmp(chan->language, "pt")) { /*Spanish, French or Portuguese syntax */
cmd = ast_play_and_wait(chan, "vm-messages"); /* "messages */
if (cmd)
return cmd;
return ast_play_and_wait(chan, mbox);
} else { /* Default English */
cmd = ast_play_and_wait(chan, mbox);
if (cmd)
return cmd;
return ast_play_and_wait(chan, "vm-messages"); /* "messages */
}
}
/* Default English syntax */
static int vm_intro(struct ast_channel *chan,struct vm_state *vms)
static int vm_intro_en(struct ast_channel *chan,struct vm_state *vms)
{
/* Introduce messages they have */
int res;
@@ -2952,6 +3042,26 @@ static int vm_intro_cz(struct ast_channel *chan,struct vm_state *vms)
return res;
}
static int vm_intro(struct ast_channel *chan,struct vm_state *vms)
{
/* Play voicemail intro - syntax is different for different languages */
if (!strcasecmp(chan->language, "de")) { /* GERMAN syntax */
return vm_intro_de(chan, vms);
} else if (!strcasecmp(chan->language, "es")) { /* SPANISH syntax */
return vm_intro_es(chan, vms);
} else if (!strcasecmp(chan->language, "fr")) { /* FRENCH syntax */
return vm_intro_fr(chan, vms);
} else if (!strcasecmp(chan->language, "nl")) { /* DUTCH syntax */
return vm_intro_nl(chan, vms);
} else if (!strcasecmp(chan->language, "pt")) { /* PORTUGUESE syntax */
return vm_intro_pt(chan, vms);
} else if (!strcasecmp(chan->language, "cz")) { /* CZECH syntax */
return vm_intro_cz(chan, vms);
} else { /* Default to ENGLISH */
return vm_intro_en(chan, vms);
}
}
static int vm_instructions(struct ast_channel *chan, struct vm_state *vms, int skipadvanced)
{
int res = 0;
@@ -2960,17 +3070,8 @@ static int vm_instructions(struct ast_channel *chan, struct vm_state *vms, int s
if (vms->starting) {
if (vms->lastmsg > -1) {
res = ast_play_and_wait(chan, "vm-onefor");
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "fr") || !strcasecmp(chan->language, "pt")) { /* Spanish, French & Portuguese Syntax */
if (!res)
res = ast_play_and_wait(chan, "vm-messages");
if (!res)
res = ast_play_and_wait(chan, vms->vmbox);
} else { /* Default English syntax */
if (!res)
res = ast_play_and_wait(chan, vms->vmbox);
if (!res)
res = ast_play_and_wait(chan, "vm-messages");
}
if (!res)
res = vm_play_folder_name(chan, vms->vmbox);
}
if (!res)
res = ast_play_and_wait(chan, "vm-opts");
@@ -3034,15 +3135,15 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct
switch (cmd) {
case '1':
snprintf(prefile,sizeof(prefile),"voicemail/%s/%s/unavail",vmu->context, vms->username);
cmd = play_record_review(chan,"vm-rec-unv",prefile, maxgreet, fmtc, 0, vmu, &duration);
cmd = play_record_review(chan,"vm-rec-unv",prefile, maxgreet, fmtc, 0, vmu, &duration, NULL);
break;
case '2':
snprintf(prefile,sizeof(prefile),"voicemail/%s/%s/busy",vmu->context, vms->username);
cmd = play_record_review(chan,"vm-rec-busy",prefile, maxgreet, fmtc, 0, vmu, &duration);
cmd = play_record_review(chan,"vm-rec-busy",prefile, maxgreet, fmtc, 0, vmu, &duration, NULL);
break;
case '3':
snprintf(prefile,sizeof(prefile),"voicemail/%s/%s/greet",vmu->context, vms->username);
cmd = play_record_review(chan,"vm-rec-name",prefile, maxgreet, fmtc, 0, vmu, &duration);
cmd = play_record_review(chan,"vm-rec-name",prefile, maxgreet, fmtc, 0, vmu, &duration, NULL);
break;
case '4':
if (vmu->password[0] == '-') {
@@ -3051,19 +3152,24 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct
}
newpassword[1] = '\0';
newpassword[0] = cmd = ast_play_and_wait(chan,"vm-newpassword");
if (cmd < 0)
break;
if ((cmd = ast_readstring(chan,newpassword + strlen(newpassword),sizeof(newpassword)-1,2000,10000,"#")) < 0) {
break;
}
if (cmd == '#')
newpassword[0] = '\0';
else {
if (cmd < 0)
break;
if ((cmd = ast_readstring(chan,newpassword + strlen(newpassword),sizeof(newpassword)-1,2000,10000,"#")) < 0)
break;
}
newpassword2[1] = '\0';
newpassword2[0] = cmd = ast_play_and_wait(chan,"vm-reenterpassword");
if (cmd < 0)
break;
if ((cmd = ast_readstring(chan,newpassword2 + strlen(newpassword2),sizeof(newpassword2)-1,2000,10000,"#"))) {
break;
}
if (cmd == '#')
newpassword2[0] = '\0';
else {
if (cmd < 0)
break;
if ((cmd = ast_readstring(chan,newpassword2 + strlen(newpassword2),sizeof(newpassword2)-1,2000,10000,"#")))
break;
}
if (strcmp(newpassword, newpassword2)) {
ast_log(LOG_NOTICE,"Password mismatch for user %s (%s != %s)\n", vms->username, newpassword, newpassword2);
cmd = ast_play_and_wait(chan, "vm-mismatch");
@@ -3095,7 +3201,7 @@ static int vm_options(struct ast_channel *chan, struct ast_vm_user *vmu, struct
}
/* Default English syntax */
static int vm_browse_messages(struct ast_channel *chan, struct vm_state *vms, struct ast_vm_user *vmu)
static int vm_browse_messages_en(struct ast_channel *chan, struct vm_state *vms, struct ast_vm_user *vmu)
{
int cmd=0;
@@ -3153,6 +3259,17 @@ static int vm_browse_messages_pt(struct ast_channel *chan, struct vm_state *vms,
return cmd;
}
static int vm_browse_messages(struct ast_channel *chan, struct vm_state *vms, struct ast_vm_user *vmu)
{
if (!strcasecmp(chan->language, "es")) { /* SPANISH */
return vm_browse_messages_es(chan, vms, vmu);
} else if (!strcasecmp(chan->language, "pt")) { /* PORTUGUESE */
return vm_browse_messages_pt(chan, vms, vmu);
} else { /* Default to English syntax */
return vm_browse_messages_en(chan, vms, vmu);
}
}
static int vm_execmain(struct ast_channel *chan, void *data)
{
/* XXX This is, admittedly, some pretty horrendus code. For some
@@ -3272,7 +3389,7 @@ static int vm_execmain(struct ast_channel *chan, void *data)
goto out;
}
}
if (prefix) {
if (prefix && !ast_strlen_zero(prefixstr)) {
char fullusername[80] = "";
strncpy(fullusername, prefixstr, sizeof(fullusername) - 1);
strncat(fullusername, vms.username, sizeof(fullusername) - 1);
@@ -3293,15 +3410,20 @@ static int vm_execmain(struct ast_channel *chan, void *data)
logretries++;
if (!valid) {
if (skipuser || logretries >= maxlogins) {
if (ast_streamfile(chan, "vm-incorrect", chan->language))
break;
if (ast_streamfile(chan, "vm-incorrect", chan->language)) {
ast_log(LOG_WARNING, "Unable to stream incorrect message\n");
return -1;
}
} else {
if (useadsi)
adsi_login(chan);
if (ast_streamfile(chan, "vm-incorrect-mailbox", chan->language))
break;
if (ast_streamfile(chan, "vm-incorrect-mailbox", chan->language)) {
ast_log(LOG_WARNING, "Unable to stream incorrect mailbox message\n");
return -1;
}
}
ast_waitstream(chan, "");
if (ast_waitstream(chan, "")) /* Channel is hung up */
return -1;
}
}
if (!valid && (logretries >= maxlogins)) {
@@ -3336,22 +3458,7 @@ static int vm_execmain(struct ast_channel *chan, void *data)
if (useadsi)
adsi_status(chan, &vms);
res = 0;
/* Play voicemail intro - syntax is different for different languages */
if (!strcasecmp(chan->language, "de")) { /* GERMAN syntax */
cmd = vm_intro_de(chan, &vms);
} else if (!strcasecmp(chan->language, "es")) { /* SPANISH syntax */
cmd = vm_intro_es(chan, &vms);
} else if (!strcasecmp(chan->language, "fr")) { /* FRENCH syntax */
cmd = vm_intro_fr(chan, &vms);
} else if (!strcasecmp(chan->language, "nl")) { /* DUTCH syntax */
cmd = vm_intro_nl(chan, &vms);
} else if (!strcasecmp(chan->language, "pt")) { /* PORTUGUESE syntax */
cmd = vm_intro_pt(chan, &vms);
} else if (!strcasecmp(chan->language, "cz")) { /* CZECH syntax */
cmd = vm_intro_cz(chan, &vms);
} else { /* Default to ENGLISH */
cmd = vm_intro(chan, &vms);
}
cmd = vm_intro(chan, &vms);
vms.repeats = 0;
vms.starting = 1;
while((cmd > -1) && (cmd != 't') && (cmd != '#')) {
@@ -3361,13 +3468,7 @@ static int vm_execmain(struct ast_channel *chan, void *data)
vms.curmsg = 0;
/* Fall through */
case '5':
if (!strcasecmp(chan->language, "es")) { /* SPANISH */
cmd = vm_browse_messages_es(chan, &vms, vmu);
} else if (!strcasecmp(chan->language, "pt")) { /* PORTUGUESE */
cmd = vm_browse_messages_pt(chan, &vms, vmu);
} else { /* Default to English syntax */
cmd = vm_browse_messages(chan, &vms, vmu);
}
cmd = vm_browse_messages(chan, &vms, vmu);
break;
case '2': /* Change folders */
if (useadsi)
@@ -3383,17 +3484,8 @@ static int vm_execmain(struct ast_channel *chan, void *data)
}
if (useadsi)
adsi_status2(chan, &vms);
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "pt")) { /* SPANISH or PORTUGUESE */
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
if (!cmd)
cmd = ast_play_and_wait(chan, vms.vmbox);
} else { /* Default to English syntax */
if (!cmd)
cmd = ast_play_and_wait(chan, vms.vmbox);
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
}
if (!cmd)
cmd = vm_play_folder_name(chan, vms.vmbox);
vms.starting = 1;
break;
case '3': /* Advanced options */
@@ -3552,21 +3644,9 @@ static int vm_execmain(struct ast_channel *chan, void *data)
cmd = say_and_wait(chan, vms.curmsg + 1, chan->language);
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-savedto");
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "pt")) { /* SPANISH or PORTUGUESE */
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
if (!cmd) {
snprintf(vms.fn, sizeof(vms.fn), "vm-%s", mbox(box));
cmd = ast_play_and_wait(chan, vms.fn);
}
} else { /* Default to English */
if (!cmd) {
snprintf(vms.fn, sizeof(vms.fn), "vm-%s", mbox(box));
cmd = ast_play_and_wait(chan, vms.fn);
}
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
}
snprintf(vms.fn, sizeof(vms.fn), "vm-%s", mbox(box));
if (!cmd)
cmd = vm_play_folder_name(chan, vms.fn);
if (skipaftercmd) {
if (vms.curmsg < vms.lastmsg) {
vms.curmsg++;
@@ -3580,17 +3660,8 @@ static int vm_execmain(struct ast_channel *chan, void *data)
case '*':
if (!vms.starting) {
cmd = ast_play_and_wait(chan, "vm-onefor");
if (!strcasecmp(chan->language, "es") || !strcasecmp(chan->language, "pt")) { /* Spanish or Portuguese syntax */
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
if (!cmd)
cmd = ast_play_and_wait(chan, vms.vmbox);
} else {
if (!cmd)
cmd = ast_play_and_wait(chan, vms.vmbox);
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-messages");
}
if (!cmd)
cmd = vm_play_folder_name(chan, vms.vmbox);
if (!cmd)
cmd = ast_play_and_wait(chan, "vm-opts");
if (!cmd)
@@ -3803,7 +3874,7 @@ static int handle_show_voicemail_users(int fd, int argc, char *argv[])
if ((vmdir = opendir(dirname))) {
/* No matter what the format of VM, there will always be a .txt file for each message. */
while ((vment = readdir(vmdir)))
if (!strncmp(vment->d_name + 7,".txt",4))
if (strlen(vment->d_name) > 7 && !strncmp(vment->d_name + 7,".txt",4))
vmcount++;
closedir(vmdir);
}
@@ -3927,7 +3998,7 @@ static int load_config(void)
zonesl = NULL;
users = NULL;
usersl = NULL;
memset(ext_pass_cmd, 0, sizeof(ext_pass_cmd) - 1);
memset(ext_pass_cmd, 0, sizeof(ext_pass_cmd));
if (cfg) {
/* General settings */
@@ -4529,7 +4600,7 @@ static int advanced_options(struct ast_channel *chan, struct ast_vm_user *vmu, s
static int play_record_review(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int outsidecaller, struct ast_vm_user *vmu, int *duration)
static int play_record_review(struct ast_channel *chan, char *playfile, char *recordfile, int maxtime, char *fmt, int outsidecaller, struct ast_vm_user *vmu, int *duration, const char *unlockdir)
{
/* Record message & let caller review or re-record it, or set options if applicable */
int res = 0;
@@ -4582,14 +4653,12 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re
}
recorded = 1;
/* After an attempt has been made to record message, we have to take care of INTRO and beep for incoming messages, but not for greetings */
cmd = ast_play_and_record(chan, playfile, recordfile, maxtime, fmt, duration, silencethreshold, maxsilence);
cmd = ast_play_and_record(chan, playfile, recordfile, maxtime, fmt, duration, silencethreshold, maxsilence, unlockdir);
if (cmd == -1)
/* User has hung up, no options to give */
return res;
return cmd;
if (cmd == '0') {
/* Erase the message if 0 pushed during playback */
ast_play_and_wait(chan, "vm-deleted");
vm_delete(recordfile);
break;
} else if (cmd == '*') {
break;
}
@@ -4642,13 +4711,20 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re
return 1;
#endif
case '0':
if (outsidecaller && vmu->operator) {
if (message_exists)
ast_play_and_wait(chan, "vm-msgsaved");
return cmd;
} else
cmd = ast_play_and_wait(chan, "vm-sorry");
break;
if (message_exists || recorded) {
cmd = ast_play_and_wait(chan, "vm-saveoper");
if (!cmd)
cmd = ast_waitfordigit(chan, 3000);
if (cmd == '1') {
ast_play_and_wait(chan, "vm-msgsaved");
cmd = '0';
} else {
ast_play_and_wait(chan, "vm-deleted");
vm_delete(recordfile);
cmd = '0';
}
}
return cmd;
default:
/* If the caller is an ouside caller, and the review option is enabled,
allow them to review the message, but let the owner of the box review
@@ -4684,7 +4760,7 @@ static int play_record_review(struct ast_channel *chan, char *playfile, char *re
}
}
if (outsidecaller)
ast_play_and_wait(chan, "vm-goodbye");
ast_play_and_wait(chan, "vm-goodbye");
if (cmd == 't')
cmd = 0;
return cmd;
@@ -4706,6 +4782,7 @@ static int vm_delete(char *file)
return ast_filedelete(file, NULL);
}
int usecount(void)
{
int res;

0
apps/app_waitforring.c Executable file → Normal file
View File

0
apps/app_zapateller.c Executable file → Normal file
View File

0
apps/app_zapbarge.c Executable file → Normal file
View File

27
apps/app_zapras.c Executable file → Normal file
View File

@@ -125,8 +125,14 @@ static void run_ras(struct ast_channel *chan, char *args)
int status;
int res;
int signalled = 0;
struct zt_bufferinfo bi;
struct zt_bufferinfo savebi;
int x;
res = ioctl(chan->fds[0], ZT_GET_BUFINFO, &savebi);
if(res) {
ast_log(LOG_WARNING, "Unable to check buffer policy on channel %s\n", chan->name);
return;
}
pid = spawn_ras(chan, args);
if (pid < 0) {
@@ -162,20 +168,11 @@ static void run_ras(struct ast_channel *chan, char *args)
x = 1;
ioctl(chan->fds[0], ZT_AUDIOMODE, &x);
/* Double check buffering too */
res = ioctl(chan->fds[0], ZT_GET_BUFINFO, &bi);
if (!res) {
/* XXX This is ZAP_BLOCKSIZE XXX */
bi.bufsize = 204;
bi.txbufpolicy = ZT_POLICY_IMMEDIATE;
bi.rxbufpolicy = ZT_POLICY_IMMEDIATE;
bi.numbufs = 4;
res = ioctl(chan->fds[0], ZT_SET_BUFINFO, &bi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on channel %s\n", chan->name);
}
} else
ast_log(LOG_WARNING, "Unable to check buffer policy on channel %s\n", chan->name);
/* Restore saved values */
res = ioctl(chan->fds[0], ZT_SET_BUFINFO, &savebi);
if (res < 0) {
ast_log(LOG_WARNING, "Unable to set buffer policy on channel %s\n", chan->name);
}
break;
}
}

0
apps/app_zapscan.c Executable file → Normal file
View File

0
apps/enter.h Executable file → Normal file
View File

0
apps/leave.h Executable file → Normal file
View File

0
apps/rpt_flow.pdf Executable file → Normal file
View File

Some files were not shown because too many files have changed in this diff Show More