Commit Graph

601 Commits

Author SHA1 Message Date
Mark Michelson
2fa91746e3 We need to create the directory for a voicemail user even if they are using IMAP storage
since greetings are stored in the filesystem.

(closes issue #11388, reported by spditner, patch by me inspired by a patch by spditner)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@93291 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-17 19:53:48 +00:00
Mark Michelson
7f7cbe7f69 Prevent another potential fd leak
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@92807 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-13 20:03:20 +00:00
Mark Michelson
fb077e33cb Prevent a possible fd leak.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@92803 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-13 19:49:55 +00:00
Mark Michelson
ad820243bd IMAP storage did not honor the maxmsg setting in voicemail.conf, and it also had the possibility
of crashing if a user had more than 256 messages in their voicemail. This patch kills two birds with
one stone by adding maxmsg support and also setting a hard limit on the number of messages at 255 so
that the crashes cannot happen.

(closes issue #11101, reported by Skavin, patched by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@91541 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-06 20:25:11 +00:00
Mark Michelson
41661777a4 Reverting extra stuff I didn't mean to commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@91292 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 22:57:13 +00:00
Mark Michelson
a1a592f3f0 The 'G' option for Dial() did not properly handle the case where only a label was
provided. This was due to the fact that the answering channel did not have an extension
set, so ast_parseable_goto would fail. This fix eliminates the call to ast_parseable_goto
on the answering channel since it is a wasteful call. The answering channel and the calling
channel are both directed to the same extension and context, just different priorities, so
we can just copy the values from the calling channel to the answering channel and increment
the answering channel's priority.

(closes issue #11382, reported by jon, patch by me with correction by jon)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@91273 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-12-05 22:35:52 +00:00
Mark Michelson
f1d612adb9 Recording greetings when using IMAP storage was causing zero-length files to be stored.
Since greetings are not retrieved from IMAP anyway, it is pointless to attempt storing them there.

(closes issue #11359, reported by spditner, patched by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89999 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-28 17:30:47 +00:00
Mark Michelson
5efa50746e Revert vmu->email back to an empty string if it was empty when imap_store_file
was called. This prevents sending a duplicate e-mail. 

(closes issue #11204, reported by spditner, patched by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-26 15:48:06 +00:00
Tilghman Lesher
e671cb909d Currently, zero-length voicemail messages cause a hangup in VoicemailMain.
This change fixes the problem, with a multi-faceted approach.  First, we
do our best to avoid these messages from being created in the first place,
and second, if that fails, we detect when the voicemail message is
zero-length and avoid exiting at that point.
Reported by: dtyoo
Patch by: gkloepfer,tilghman
(Closes issue #11083)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89540 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-24 06:19:23 +00:00
Mark Michelson
9f5cf47a6f I made this same adjustment in trunk to fix a bug, and it makes sense to do it in 1.4 as
well. If an imapfolder is specified in voicemail.conf, don't ever explicitly connect to 
INBOX since it may not exist.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@89111 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-11-08 16:47:23 +00:00
Mark Michelson
a4c50fdd7b Removing a completely unnecessary quota check from IMAP code.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@87427 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-29 21:06:31 +00:00
Mark Michelson
222302c0a2 Account for the fact that sometimes headers may be terminated with \r\n instead of just \n
(closes issue #11043, reported by yehavi)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@86694 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-22 14:48:46 +00:00
Russell Bryant
f192689840 Remove a pointless lock.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85896 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-16 19:10:01 +00:00
Mark Michelson
deb480f124 A bunch of changes from sprintf to snprintf.
See security advisory AST-2002-022



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85276 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-10 14:26:31 +00:00
Joshua Colp
3151af0015 Close voicemail message description file if duration did not meet the minimum, or else we will eventually run out of file descriptors.
(closes issue #10918)
Reported by: brak2718
Patches:
      vm1.4.12.1.patch uploaded by brak2718 (license 279)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@85242 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-10-10 14:14:56 +00:00
Russell Bryant
82a6309168 Put a memset in ast_localtime() instead of a couple places in app_voicemail
to prevent the problem everywhere instead of just a couple of places.
(related to issue #10746)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82676 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 20:16:25 +00:00
Russell Bryant
a67e593e66 Initialize some memory to fix crashes when leaving voicemail. This problem
was fixed by running Asterisk under valgrind.
(closes issue #10746, reported by arcivanov, patched by me)

*** IMPORTANT NOTE:  We need to check to see if this same bug exists elsewhere.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82644 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-17 20:00:32 +00:00
Mark Michelson
39d628adcf Accidentally committed changes to app_voicemail which do NOT need to be in the 1.4 branch yet. reverting...
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82276 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-12 14:30:13 +00:00
Mark Michelson
da18cece2c We should only initialize a realtime queue when it is allocated, not every time we access it. This prevents the members ao2_container
from being reallocated every time the queue is accessed.

I also removed a debug message I had accidentally left in on a previous commit.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@82274 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-09-12 14:24:53 +00:00
Mark Michelson
09fc9c894e Fix a possible crash in IMAP voicemail.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80750 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-24 15:51:03 +00:00
Mark Michelson
7c7ec6a1da Ukrainian language voicemail support.
(closes issue #10458, reported and patched by Oleh)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@80044 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 15:34:43 +00:00
Tilghman Lesher
e6768adf1b Missing curly braces. Oops. (Reported by snuffy via IRC)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79998 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-20 02:42:49 +00:00
Tilghman Lesher
d0469e3c42 Don't allocate vmu for messagecount when we could just use the stack instead (closes issue #10490)
Also, remove a useless (and leaky) SQLAllocHandle (closes issue #10480)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79947 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-18 14:30:44 +00:00
Mark Michelson
403ee9194c Patch allows for more seamless transition from file storage voicemail to ODBC storage voicemail.
If a retrieval of a greeting from the database fails, but the file is found on the file system, then
we go ahead an insert the greeting into the database. The result of this is that people who
switch from file storage to ODBC storage do not need to rerecord their voicemail greetings.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79906 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-17 19:14:05 +00:00
Mark Michelson
ec2f24b901 base_encode is not trying to open a log file, so we should not call it a log file in the warning.
(related to issue #10452, reported by bcnit)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79690 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-16 15:58:34 +00:00
Mark Michelson
176f95680b Fixed an error in the Russian language voicemail intro.
(issue #10458, reported and patched by Oleh)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@79527 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-15 14:26:40 +00:00
Mark Michelson
7133eb1368 Improved a bit of logic regarding comma-separated mailboxes in has_voicemail. Also added some braces to some compound if statements
since unbraced if statements scare me in general.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78907 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 23:47:00 +00:00
Mark Michelson
48d9158cdd Removing some extra debug code I left in my last commit
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78860 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 22:03:48 +00:00
Mark Michelson
fd5f948092 Quite a few changes regarding IMAP storage.
1. instead of using inboxcount as the core message counting function, we use messagecount instead. This makes it possible to count messages in folders besides just INBOX and Old.
2. inboxcount and hasvoicemail now use messagecount as their means of determining return values.
3. Added a copy_message function for IMAP storage. Unfortunately I don't have the means to test it, but it seems like a pretty straightforward function.
4. Removed a #ifndef IMAP_STORAGE and matching #endif from leave_voicemail for a couple of reasons. One, we want to support copying mail to multiple IMAP boxes, and two, IMAP was
   broken because a STORE macro had been moved into this section of code.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78859 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 21:51:17 +00:00
Russell Bryant
f2bf48ce42 add a comment to indicate that inboxcount for ODBC_STORAGE needs to be fixed to support multiple mailboxes
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 17:58:31 +00:00
Russell Bryant
e019aff438 Fix subscriptions to multiple mailboxes for ODBC_STORAGE. Also, leave a
comment for this to be fixed for IMAP_STORAGE, as well.  I left IMAP alone
since I know MarkM was working on this code right now for another reason.

This is broken even worse in trunk, but for a different reason.  The fact
that the mailbox option supported multiple mailboxes is completely not obvious
from the code in the channel drivers.  Anyway, I will fix that in another
commit ...


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78749 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-09 17:24:40 +00:00
Mark Michelson
c97cdff67d Fixed some compiler warnings so that compiling with dev-mode and IMAP storage would not have any errors.
This section of code may get changed again shortly since my change uncovers a rather silly bit of logic.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78620 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-08 18:16:49 +00:00
Mark Michelson
dcfb651931 The logic behind inboxcount's return value was reversed in has_voicemail and message_count.
(closes issue #10401, reported by st1710, patched by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78450 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-07 19:43:57 +00:00
Tilghman Lesher
57996e930e Reconnection doesn't happen automatically when a DB goes down (fixes issue #9389)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78415 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-07 19:09:38 +00:00
Russell Bryant
76f4f0218c (closes issue #10194)
Reported by: blitzrage
Patches:
      bug0010194 uploaded by vovochka
Tested by: blitzrage

Fix a problem when you call Voicemail() with multiple mailboxes specified and 
ODBC_STORAGE is in use.  The audio part of the message was only given to the
first mailbox specified.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@78101 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-03 20:14:06 +00:00
Tilghman Lesher
9b71e8eef2 Voicemail with ODBC_STORAGE defined does not compile cleanly (missing def)
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@77886 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-01 22:14:47 +00:00
Joshua Colp
68c221f69a Add some fixes for building on Solaris.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@77869 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-08-01 17:56:59 +00:00
Tilghman Lesher
3630b5e477 It was our stated intention for 1.4 that files created in app_voicemail should
depend upon the umask.  Unfortunately, mkstemp() creates files with mode 0600,
regardless of the umask.  This corrects that deficiency.


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@76708 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-23 22:38:06 +00:00
Tilghman Lesher
0b6bdf6bf3 Merged revisions 75748 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r75748 | tilghman | 2007-07-18 15:31:36 -0500 (Wed, 18 Jul 2007) | 2 lines

Store prior to copy (closes issue #10193)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@75749 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-18 20:40:18 +00:00
Joshua Colp
6d143d401f Backport GCC 4.2 fixes. Without these Asterisk won't build under devmode using GCC 4.2.
git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@75712 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-18 20:00:23 +00:00
Mark Michelson
4ab675ca50 Forwarding a message with IMAP storage was storing the message in the sender's box instead of the forwarded mailbox.
(closes issue #10138, reported and patched by jaroth)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74476 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 23:32:52 +00:00
Jason Parker
53b44803ee Merged revisions 74316 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r74316 | qwell | 2007-07-10 10:37:54 -0500 (Tue, 10 Jul 2007) | 4 lines

Fix a small typo in description in of Voicemail() application.

Issue 10170, patch by casper.

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74317 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-10 15:38:32 +00:00
Mark Michelson
441d1bbdf5 Fixed a logic error in leave_voicemail. Pass the mailbox instead of the context to inbox_count when the context is "default."
(closes issue #10135, reported by yannj, repaired by me)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@74047 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-09 14:57:41 +00:00
Mark Michelson
bf9d8ab999 Fixing a rare case which causes voicemail to crash when compiled with IMAP storage.
inboxcount has the possibility of finding an "interactive" vm_state when no persistent "non-interactive"
vm_state exists for that mailbox. If this should happen when someone attempts to leave a message, it results in
a crash. This patch, along with my commit in revision 72670 fix issue 10053, reported by jaroth.

closes issue #10053



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@73727 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-07-06 16:36:17 +00:00
Jason Parker
04524392d3 Fix another problem in voicemail with missing symbols.
Issue 10074, patch by kryptolus, extended to include #if 0'd blocks (just in case)


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@72182 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-27 18:36:56 +00:00
Mark Michelson
83fd6c08d2 Removing a pointless line. This variable was already set earlier and between then and this
line, there is no way that the values on the right side of the assignment could have changed.



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71953 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-26 23:02:09 +00:00
Mark Michelson
79332488f7 A few changes, the ultimate goal of which is to keep better track of the number of messages
that a mailbox currently has. A description of the changes:

1. Changed the "updated" field of the vm_state struct to act more as a binary semaphore than a
   counting semaphore, since its current implementation made the inboxcount function not work properly.
   This change falls in line with a change made by UPenn with their IMAP setup and helps to sync our changes with theirs.
2. Eliminated some redundant calls to get_vm_state_by_mailbox inside leave_voicemail
3. Use the play_folder variable to keep track of the number of old and new messages in a mailbox as the messages are deleted
4. Added an increment to the number of new messages that was not there previously in the leave_voicemail function



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71877 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-26 19:00:05 +00:00
Mark Michelson
555dcbc021 Fixing bug where the authuser was mistakenly pulled from the mailbox string instead
of the IMAP user.
(closes issue 10054, reported and patched by jaroth)



git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71796 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-26 15:47:31 +00:00
Tilghman Lesher
5da46f710e Merged revisions 71750 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r71750 | tilghman | 2007-06-26 07:25:58 -0500 (Tue, 26 Jun 2007) | 2 lines

Issue 10062 - Trying to move a message without selecting one first results in memory corruption

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@71751 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-26 12:27:47 +00:00
Joshua Colp
c7dc8d1735 Merged revisions 70898 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r70898 | file | 2007-06-21 17:37:55 -0400 (Thu, 21 Jun 2007) | 2 lines

Don't explode if the gain option is specified without a value. (issue #9274 reported by mfarver)

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/branches/1.4@70899 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2007-06-21 21:40:19 +00:00