Commit Graph

524 Commits

Author SHA1 Message Date
Terry Wilson
ebaf59a656 Opaquification for ast_format structs in struct ast_channel
Review: https://reviewboard.asterisk.org/r/1770/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@356573 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-24 00:32:20 +00:00
Terry Wilson
57f42bd74f ast_channel opaquification of pointers and integral types
Review: https://reviewboard.asterisk.org/r/1753/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@356042 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-20 23:43:27 +00:00
Terry Wilson
34c55e8e7c Opaquify char * and char[] in ast_channel
Review: https://reviewboard.asterisk.org/r/1733/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@354968 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-13 17:27:06 +00:00
Joshua Colp
afdd96712c Make the 'c' option to MeetMe work even if the 'q' option is used.
(closes issue ASTERISK-17053)
Reported by: justdave


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@354084 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-02-06 16:38:23 +00:00
Terry Wilson
99cae5b750 Opaquify channel stringfields
Continue channel opaque-ification by wrapping all of the stringfields.
Eventually, we will restrict what can actually set these variables, but
the purpose for now is to hide the implementation and keep people from
adding code that directly accesses the channel structure. Semantic
changes will follow afterward.

Review: https://reviewboard.asterisk.org/r/1661/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@352348 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-24 20:12:09 +00:00
Terry Wilson
04da92c379 Replace direct access to channel name with accessor functions
There are many benefits to making the ast_channel an opaque handle, from
increasing maintainability to presenting ways to kill masquerades. This patch
kicks things off by taking things a field at a time, renaming the field to
'__do_not_use_${fieldname}' and then writing setters/getters and converting the
existing code to using them. When all fields are done, we can move ast_channel
to a C file from channel.h and lop off the '__do_not_use_'.

This patch sets up main/channel_interal_api.c to be the only file that actually
accesses the ast_channel's fields directly. The intent would be for any API
functions in channel.c to use the accessor functions. No more monkeying around
with channel internals. We should use our own APIs.

The interesting changes in this patch are the addition of
channel_internal_api.c, the moving of the AST_DATA stuff from channel.c to
channel_internal_api.c (note: the AST_DATA stuff will have to be reworked to
use accessor functions when ast_channel is really opaque), and some re-working
of the way channel iterators/callbacks are handled so as to avoid creating fake
ast_channels on the stack to pass in matching data by directly accessing fields
(since "name" is a stringfield and the fake channel doesn't init the
stringfields, you can't use the ast_channel_name_set() function). I went with
ast_channel_name(chan) for a getter, and ast_channel_name_set(chan, name) for a
setter.

The majority of the grunt-work for this change was done by writing a semantic
patch using Coccinelle ( http://coccinelle.lip6.fr/ ).

Review: https://reviewboard.asterisk.org/r/1655/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350223 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-09 22:15:50 +00:00
Kinsey Moore
c04f4d72fd Prevent SLA settings from getting wiped out on reload
If SLA was reloaded without the config file being changed, current settings got
wiped out before the SLA reload code decided it wasn't going to reload the file
since nothing was changed.  Moving the settings reset later in the reload
process fixes this.

(closes issue AST-744)
........

Merged revisions 350023 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 350024 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@350025 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-01-09 15:40:16 +00:00
Jonathan Rose
8e94432d9a Fix: Meetme recording variables from realtime DB use null entries over channel variables
Meetme would attempt to substitute the realtime values of RECORDING_FILE and
RECORDING_FORMAT from the meetme db entry instead of using the channel variable set
for those variables in spite of those database entries being NULL or even lacking
a column to represent them.

(closes issue ASTERISK-18873)
Reported by: Byron Clark
Patches:
	ASTERISK-18873-1.patch uploaded by Byron Clark (license 6157)
........

Merged revisions 347369 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 347383 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@347395 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-12-07 20:34:23 +00:00
Kinsey Moore
dc05ce5e4f Fix another incorrect case with meetme's PIN logic and add documentation
This fixes an issue where a user of a dynamic conference was asked for a PIN
twice.  This also adds documentation to assist in future modifications to the
piece of code responsible for PIN checking.

(closes issue AST-670)
........

Merged revisions 344439 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 344440 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@344441 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-11-10 21:15:39 +00:00
Kinsey Moore
c1647ab33a Fix pin parameter behavior regression in MeetMe
The last time this code was touched (by me), a subtlety was missed based on the
difference between needing to check a pin's validity and the need to prompt
for a pin.

(closes issue ASTERISK-18488)
........

Merged revisions 344102 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 344103 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@344104 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-11-09 17:15:44 +00:00
Kevin P. Fleming
784bbf70d7 Modify comments in MeetMe application documentation about DAHDI.
The MeetMe application documentation has some comments about usage of DAHDI,
and they were a bit outdated relative to modern DAHDI releases. This patch
changes the comment to just tell the user that a functional DAHDI timing
source is required, and no longer mention 'dahdi_dummy', since that module
does not exist in current DAHDI releases.
........

Merged revisions 342990 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 342991 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@342992 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-11-02 13:46:15 +00:00
Richard Mudgett
796ed62f47 Update MeetMe p and X option documentation when interacting with the s option.
ASTERISK-12175 changed the p and X options to not interfere with the s
option when they are used together.  It makes more sense for the s option
to have priority for the DTMF '*' key since it cannot change its
activation code.  Otherwise, you could not use option s with the p or X
options.

JIRA AST-671
........

Merged revisions 340470 from http://svn.asterisk.org/svn/asterisk/branches/1.8
........

Merged revisions 340471 from http://svn.asterisk.org/svn/asterisk/branches/10


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@340472 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-10-12 17:52:55 +00:00
Matthew Jordan
e218748ac1 Merged revisions 337120 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10

................
  r337120 | mjordan | 2011-09-20 17:49:36 -0500 (Tue, 20 Sep 2011) | 28 lines
  
  Merged revisions 337118 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r337118 | mjordan | 2011-09-20 17:38:54 -0500 (Tue, 20 Sep 2011) | 21 lines
    
    Fix for incorrect voicemail duration in external notifications
    
    This patch fixes an issue where the voicemail duration was being reported
    with a duration significantly less than the actual sound file duration.
    Voicemails that contained mostly silence were reporting the duration of
    only the sound in the file, as opposed to the duration of the file with
    the silence.  This patch fixes this by having two durations reported in
    the __ast_play_and_record family of functions - the sound_duration and the
    actual duration of the file.  The sound_duration, which is optional, now
    reports the duration of the sound in the file, while the actual full duration
    of the file is reported in the duration parameter.  This allows the voicemail
    applications to use the sound_duration for minimum duration checking, while
    reporting the full duration to external parties if the voicemail is kept.
    
    (issue ASTERISK-2234)
    (closes issue ASTERISK-16981)
    Reported by: Mary Ciuciu, Byron Clark, Brad House, Karsten Wemheuer, KevinH
    Tested by: Matt Jordan
    
    Review: https://reviewboard.asterisk.org/r/1443
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@337124 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-20 23:02:25 +00:00
Olle Johansson
73424f128e Merged revisions 336042 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10

........
  r336042 | oej | 2011-09-15 14:46:38 +0200 (Tor, 15 Sep 2011) | 12 lines
  
  Meetme: Introducing a new option "k" to kill a conference if there's only a single member left.
  
  When using Meetme as a modular call bridge from third party applications, it's handy to make
  it behave like a normal call bridge. When the second to last person exists, the last person
  will be kicked out of the conference when this option is enabled.
  
  (closes issue ASTERISK-18234)
  
  Review: https://reviewboard.asterisk.org/r/1376/
  
  Patch by oej, sponsored by ClearIT, Solna, Sweden
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@336043 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-09-15 12:50:40 +00:00
Jonathan Rose
39fe851e79 Merged revisions 331644 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10

................
  r331644 | jrose | 2011-08-12 11:18:57 -0500 (Fri, 12 Aug 2011) | 9 lines
  
  Merged revisions 331635 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r331635 | jrose | 2011-08-12 10:49:17 -0500 (Fri, 12 Aug 2011) | 1 line
    
    Fixes 32bit compilation warnings brought on by 331634 in app_dial and app_meetme
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@331717 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-08-12 18:03:29 +00:00
Jason Parker
1a8069abe2 Merged revisions 331579 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/10

................
  r331579 | qwell | 2011-08-11 16:54:54 -0500 (Thu, 11 Aug 2011) | 13 lines
  
  Merged revisions 331578 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r331578 | qwell | 2011-08-11 16:46:39 -0500 (Thu, 11 Aug 2011) | 6 lines
    
    Use proper values for 64-bit option flags.
    
    Also, reusing bits es no bueno, so change the value of a duplicate.
    
    (issue ASTERISK-18239)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@331580 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-08-11 21:55:48 +00:00
Kinsey Moore
4ea4b7e1ab Merged revisions 328771 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.10

................
  r328771 | kmoore | 2011-07-19 10:46:54 -0500 (Tue, 19 Jul 2011) | 18 lines
  
  Merged revisions 328770 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r328770 | kmoore | 2011-07-19 10:43:32 -0500 (Tue, 19 Jul 2011) | 11 lines
    
    MeetMe requests a PIN twice in some circumstances
    
    If a call to MeetMe includes both the dynamic(D) and always request PIN(P)
    options, MeetMe will ask for the PIN two times: once for creating the
    conference and once for entering the conference.  This behavior was introduced
    in rev 311616 when adding the CONFFLAG_ALWAYSPROMPT option to the logic branch
    controlling PIN entry for joining a conference.
    
    (closes AST-601)
    Review: https://reviewboard.asterisk.org/r/1305/
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@328772 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-19 15:49:55 +00:00
Leif Madsen
a525edea59 Merged revisions 328247 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.10

................
  r328247 | lmadsen | 2011-07-14 16:25:31 -0400 (Thu, 14 Jul 2011) | 14 lines
  
  Merged revisions 328209 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.8
  
  ........
    r328209 | lmadsen | 2011-07-14 16:13:06 -0400 (Thu, 14 Jul 2011) | 6 lines
    
    Introduce <support_level> tags in MODULEINFO.
    This change introduces MODULEINFO into many modules in Asterisk in order to show
    the community support level for those modules. This is used by changes committed
    to menuselect by Russell Bryant recently (r917 in menuselect). More information about
    the support level types and what they mean is available on the wiki at
    https://wiki.asterisk.org/wiki/display/AST/Asterisk+Module+Support+States
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@328259 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-07-14 20:28:54 +00:00
Leif Madsen
a5770c43f0 Merged revisions 324176 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r324176 | lmadsen | 2011-06-17 14:38:40 -0400 (Fri, 17 Jun 2011) | 2 lines
  
  Fix typo in documentation.
  Pointed out by Vlad Povorozniuc
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@324177 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-06-17 18:39:26 +00:00
Richard Mudgett
0096238b52 Merged revisions 320823 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r320823 | rmudgett | 2011-05-25 12:06:38 -0500 (Wed, 25 May 2011) | 18 lines
  
  The AMI Newstate event contains different information between v1.4 and v1.8.
  
  The addition of connected line support in v1.8 changes the behavior of the
  channel caller ID somewhat.  The channel caller ID value no longer time
  shares with the connected line ID on outgoing call legs.  The timing of
  some AMI events/responses output the connected line ID as caller ID.
  These party ID's are now separate.
  
  * The ConnectedLineNum and ConnectedLineName headers were added to many
  AMI events/responses if the CallerIDNum/CallerIDName headers were also
  present.
  
  (closes issue #18252)
  Reported by: gje
  Tested by: rmudgett
  
  Review: https://reviewboard.asterisk.org/r/1227/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@320825 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-25 17:14:11 +00:00
Richard Mudgett
091fcbce3f Merged revisions 320237 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r320237 | rmudgett | 2011-05-20 15:49:03 -0500 (Fri, 20 May 2011) | 27 lines
  
  Merged revisions 320236 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r320236 | rmudgett | 2011-05-20 15:44:54 -0500 (Fri, 20 May 2011) | 20 lines
    
    Merged revisions 320235 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r320235 | rmudgett | 2011-05-20 15:38:22 -0500 (Fri, 20 May 2011) | 13 lines
      
      The meetme CLI command completion leaves conferences mutex locked.
      
      When issuing a meetme kick CLI command and an invalid (non-existent)
      conference number is specified, pressing Tab leaves the conferences mutex
      locked and, therefore, all conferences deadlock.
      
      Add missing unlock.
      
      (closes issue #19336)
      Reported by: zvision
      Patches:
            app_meetme.diff uploaded by zvision (license 798)
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@320238 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-20 20:53:30 +00:00
Russell Bryant
6df3b851e3 Merged revisions 317969 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r317969 | russell | 2011-05-06 16:49:01 -0500 (Fri, 06 May 2011) | 10 lines
  
  Use the right variable to print the time in a debug message.
  
  The original patch also increased some buffer sizes, but that was already
  done in this version.
  
  (closes issue #17034)
  Reported by: sysreq
  Patches:
        asterisk-issue-17034.patch uploaded by sysreq (license 1009)
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@317970 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-06 21:49:47 +00:00
Russell Bryant
d05e5281da Merged revisions 317967 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r317967 | russell | 2011-05-06 16:38:54 -0500 (Fri, 06 May 2011) | 2 lines
  
  Fix some more "set but unused" compiler warnings.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@317968 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-06 21:47:05 +00:00
Richard Mudgett
a45d2f29c6 Merged revisions 316831 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r316831 | rmudgett | 2011-05-04 13:51:40 -0500 (Wed, 04 May 2011) | 9 lines
  
  Wait for leader with Music On Hold allows crosstalk between participants.
  
  Parenthesis in the wrong position.  Regression from issue #14365 when
  expanding conference flags to use 64 bits.
  
  (closes issue #18418)
  Reported by: MrHanMan
  Tested by: rmudgett
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@316832 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-04 18:57:02 +00:00
Sean Bright
c596329564 Merged revisions 316476 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r316476 | seanbright | 2011-05-03 22:34:01 -0400 (Tue, 03 May 2011) | 17 lines
  
  Merged revisions 316475 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r316475 | seanbright | 2011-05-03 22:23:01 -0400 (Tue, 03 May 2011) | 10 lines
    
    Honor the C option to MeetMe when L is passed.
    
    This fixes a case that r304773 and friends missed.
    
    (closes issue #17317)
    Reported by: var
    Patches:
          meetme-continue-on-l_16218.diff uploaded by var (license 1227)
    Tested by: seanbright
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@316477 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-04 02:39:11 +00:00
Paul Belanger
7c3d14957b Formatting change, remove red blobs
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@316054 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-05-02 15:58:27 +00:00
Olle Johansson
0622568f15 Add explanation of strange flag setup in app_meetme (stolen from Mark's message to asterisk-dev)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@314158 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-04-19 08:22:18 +00:00
Jonathan Rose
5af547a619 Minor change to 'L' option for meetme to include some verb statements for the option.
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@312756 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-04-05 13:55:41 +00:00
Brett Bryant
c31d7b21ea Merged revisions 311615 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r311615 | bbryant | 2011-03-23 17:54:11 -0400 (Wed, 23 Mar 2011) | 8 lines
  
  This patch fixes a bug with MeetMe behavior where the 'P' option for always
  prompting for a pin is ignored for the first caller.
  
  (closes issue #18070)
  Reported by: mav3rick
  
  Review: https://reviewboard.asterisk.org/r/1132/
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@311616 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-23 21:55:54 +00:00
David Vossel
7902813301 Merged revisions 311497 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r311497 | dvossel | 2011-03-22 10:25:24 -0500 (Tue, 22 Mar 2011) | 9 lines
  
  Merged revisions 311496 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r311496 | dvossel | 2011-03-22 10:24:45 -0500 (Tue, 22 Mar 2011) | 2 lines
    
    Fixes memory leak in MeetMe AMI action
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@311498 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-03-22 15:26:51 +00:00
Jeff Peeler
8f7982f280 Add new manager action MeetmeListRooms.
From the submitter:
I've added a new manager action to list only the active conferences on an
Asterisk system. It shows the same data displayed when you run a 'meetme list'
on the Asterisk CLI.

(closes issue #17905)
Reported by: rcasas
Patches: 
      app_meetme.c.patch uploaded by rcasas (license 641)

Review: https://reviewboard.asterisk.org/r/874/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@307359 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-09 22:48:02 +00:00
Paul Belanger
3556e4c2d4 Replace ast_log(LOG_DEBUG, ...) with ast_debug()
(closes issue #18556)
Reported by: kkm

Review: https://reviewboard.asterisk.org/r/1071/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@306258 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-04 16:55:39 +00:00
David Vossel
c26c190711 Asterisk media architecture conversion - no more format bitfields
This patch is the foundation of an entire new way of looking at media in Asterisk.
The code present in this patch is everything required to complete phase1 of my
Media Architecture proposal.  For more information about this project visit the link below.
https://wiki.asterisk.org/wiki/display/AST/Media+Architecture+Proposal

The primary function of this patch is to convert all the usages of format
bitfields in Asterisk to use the new format and format_cap APIs.  Functionally
no change in behavior should be present in this patch.  Thanks to twilson
and russell for all the time they spent reviewing these changes.

Review: https://reviewboard.asterisk.org/r/1083/



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@306010 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-02-03 16:22:10 +00:00
Sean Bright
cc2c9442f6 Merged revisions 304777 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r304777 | seanbright | 2011-01-29 13:09:37 -0500 (Sat, 29 Jan 2011) | 22 lines
  
  Merged revisions 304776 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r304776 | seanbright | 2011-01-29 13:08:14 -0500 (Sat, 29 Jan 2011) | 15 lines
    
    If we fail to allocate our announcement objects, make sure we don't leak objects.
    
    The majority of this patch was committed already in r304726 and r304729.
    
    (issue #18225)
    Reported by: kenji
    
    (issue #18444)
    Reported by: junky
    
    (closes issue #18343)
    Reported by: kobaz
    Patches:
          meetme-refs.diff uploaded by kobaz (license 834)
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304778 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-29 18:10:34 +00:00
Sean Bright
ed1ee072b8 Merged revisions 304774 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r304774 | seanbright | 2011-01-29 12:54:43 -0500 (Sat, 29 Jan 2011) | 16 lines
  
  Merged revisions 304773 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r304773 | seanbright | 2011-01-29 12:51:28 -0500 (Sat, 29 Jan 2011) | 9 lines
    
    When we pass the S() or L() options to MeetMe, make sure that we honor C as well.
    
    Without this patch, if the user was kicked from the conference via the S() or L()
    mechanism, we would just hang up on them even if we also passed C (continue in
    dialplan when kicked).  With this patch we honor the C flag in those cases.
    
    (closes issue #17317)
    Reported by: var
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304775 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-29 17:57:01 +00:00
Sean Bright
e229e9f010 Merged revisions 304730 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r304730 | seanbright | 2011-01-29 12:15:27 -0500 (Sat, 29 Jan 2011) | 22 lines
  
  Merged revisions 304729 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r304729 | seanbright | 2011-01-29 12:01:51 -0500 (Sat, 29 Jan 2011) | 15 lines
    
    Make sure that we unref the correct object when ejecting the most recent caller.
    
    Currently, when we kick the last user to enter, we decrement our own reference
    count which results in a crash when we kick another user or when we exit the
    conference ourselves.
    
    This will fix #18225 in 1.8 and trunk, but that particular bug does not exist in
    1.6.2.
    
    (closes issue #18225)
    Reported by: kenji
    Patches:
          issue18225.patch uploaded by seanbright (license 71)
    Tested by: seanbright
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304772 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-29 17:34:22 +00:00
Sean Bright
07b49f3adf Merged revisions 304727 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r304727 | seanbright | 2011-01-29 11:28:27 -0500 (Sat, 29 Jan 2011) | 16 lines
  
  Merged revisions 304726 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r304726 | seanbright | 2011-01-29 11:26:57 -0500 (Sat, 29 Jan 2011) | 9 lines
    
    Fix user reference leak in MeetMe.
    
    We were unlinking the user from the conferences user container, but not
    decrementing the reference count of the user as well, resulting in a leak.
    
    (closes issue #18444)
    Reported by: junky
    Tested by: seanbright
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304728 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-29 16:31:17 +00:00
Sean Bright
c5cf436a92 Merged revisions 304683 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r304683 | seanbright | 2011-01-28 17:54:23 -0500 (Fri, 28 Jan 2011) | 16 lines
  
  Merged revisions 304659,304682 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r304659 | seanbright | 2011-01-28 16:22:09 -0500 (Fri, 28 Jan 2011) | 5 lines
    
    Don't leak references if we can't create a pseudo channel for mixing in MeetMe.
    
    If there was a problem allocating a pseudo channel when building our meetme, we
    weren't destroying our user container or destroying the mutexes that we created.
  ........
    r304682 | seanbright | 2011-01-28 17:38:05 -0500 (Fri, 28 Jan 2011) | 2 lines
    
    Revert part of the previous commit that snuck in.
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@304684 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-28 22:59:27 +00:00
Russell Bryant
092134399c Merged revisions 303549 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r303549 | russell | 2011-01-24 14:51:37 -0600 (Mon, 24 Jan 2011) | 45 lines
  
  Merged revisions 303548 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r303548 | russell | 2011-01-24 14:49:53 -0600 (Mon, 24 Jan 2011) | 38 lines
    
    Merged revisions 303546 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r303546 | russell | 2011-01-24 14:32:21 -0600 (Mon, 24 Jan 2011) | 31 lines
      
      Fix channel redirect out of MeetMe() and other issues with channel softhangup.
      
      Mantis issue #18585 reports that a channel redirect out of MeetMe() stopped
      working properly.  This issue includes a patch that resolves the issue by
      removing a call to ast_check_hangup() from app_meetme.c.  I left that in my
      patch, as it doesn't need to be there.  However, the rest of the patch fixes
      this problem with or without the change to app_meetme.
      
      The key difference between what happens before and after this patch is the
      effect of the END_OF_Q control frame.  After END_OF_Q is hit in ast_read(),
      ast_read() will return NULL.  With the ast_check_hangup() removed, app_meetme
      sees this which causes it to exit as intended.  Checking ast_check_hangup()
      caused app_meetme to exit earlier in the process, and the target of the
      redirect saw the condition where ast_read() returned NULL.
      
      Removing ast_check_hangup() works around the issue in app_meetme, but doesn't
      solve the issue if another application did the same thing.  There are also
      other edge cases where if an application finishes at the same time that a
      redirect happens, the target of the redirect will think that the channel hung
      up.  So, I made some changes in pbx.c to resolve it at a deeper level.  There
      are already places that unset the SOFTHANGUP_ASYNCGOTO flag in an attempt to
      abort the hangup process.  My patch extends this to remove the END_OF_Q frame
      from the channel's read queue, making the "abort hangup" more complete.  This
      same technique was used in every place where a softhangup flag was cleared.
      
      (closes issue #18585)
      Reported by: oej
      Tested by: oej, wedhorn, russell
      
      Review: https://reviewboard.asterisk.org/r/1082/
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@303551 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-24 20:57:28 +00:00
Jason Parker
74e0a87776 Merged revisions 301090 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r301090 | qwell | 2011-01-07 14:53:02 -0600 (Fri, 07 Jan 2011) | 15 lines
  
  Merged revisions 301089 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r301089 | qwell | 2011-01-07 14:52:00 -0600 (Fri, 07 Jan 2011) | 8 lines
    
    Initialize useropts/adminopts in case there is no column in the realtime DB.
    
    (closes issue #18182)
    Reported by: dimas
    Patches: 
          v1-18182.patch uploaded by dimas (license 88)
    Tested by: dimas
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@301091 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2011-01-07 20:53:45 +00:00
Russell Bryant
2b056c97cd Merged revisions 297245 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r297245 | russell | 2010-12-02 07:20:19 -0600 (Thu, 02 Dec 2010) | 20 lines
  
  Merged revisions 297229 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r297229 | russell | 2010-12-02 07:16:47 -0600 (Thu, 02 Dec 2010) | 13 lines
    
    Merged revisions 297228 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r297228 | russell | 2010-12-02 07:16:15 -0600 (Thu, 02 Dec 2010) | 6 lines
      
      Add "DAHDI" to a couple of app_meetme error messages.
      
      This is in response to some questions on IRC.  To the user, there was nothing
      that made it obvious that this error had anything to do with DAHDI not being
      loaded.
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@297248 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-12-02 13:20:48 +00:00
Tilghman Lesher
72dc402f1f Merged revisions 296787 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

........
  r296787 | tilghman | 2010-11-30 13:12:48 -0600 (Tue, 30 Nov 2010) | 2 lines
  
  DOC: Conference number can be omitted; if omitted, all users in a meetme are listed.
........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@296788 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-30 19:13:54 +00:00
Tilghman Lesher
758a671219 Merged revisions 296467 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r296467 | tilghman | 2010-11-27 04:40:22 -0600 (Sat, 27 Nov 2010) | 12 lines
  
  Merged revisions 296466 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r296466 | tilghman | 2010-11-27 04:39:01 -0600 (Sat, 27 Nov 2010) | 5 lines
    
    18 characters is too short for most date/times (20 is the usual, but we add more in case of greater precision).
    
    (closes issue #18369)
     Reported by: tnakonz
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@296468 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-27 10:41:20 +00:00
Andrew Parisio
935930d8a3 Meetme use voicemail greet for join/leave announce
Added option v(mailbox@[context]) which tells MeetMe where to look for a users greet file.  If one does not exist it clears the v option and defers to the functionality of i/I as/if set by the MeetMe() command.

Review: https://reviewboard.asterisk.org/r/1009/
(closes issue #18297)
Reported by: parisioa
Patches:
	meetme_final_patch_v.diff uploaded by parisioa (license 1153)



git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@296249 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-11-24 23:46:14 +00:00
Brett Bryant
e8de16e970 Merged revisions 287760 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r287760 | bbryant | 2010-09-20 20:00:23 -0400 (Mon, 20 Sep 2010) | 30 lines
  
  Merged revisions 287759 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r287759 | bbryant | 2010-09-20 19:58:26 -0400 (Mon, 20 Sep 2010) | 23 lines
    
    Merged revisions 287758 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r287758 | bbryant | 2010-09-20 19:57:08 -0400 (Mon, 20 Sep 2010) | 16 lines
      
      Fix misvalidation of meetme pins in conjunction with the 'a' MeetMe flag.
      
      When using the 'a' MeetMe flag and having a user and admin pin setup for your
      conference, using the user pin would gain you admin priviledges. Also, when no
      user pin was set, an admin pin was, the 'a' MeetMe flag wasn't used, and the
      user tried to enter a conference then they were still prompted for a pin and
      forced to hit #.
      
      (closes issue #17908)
      Reported by: kuj
      Patches:
            pins_2.patch uploaded by kuj (license 1111)
            Tested by: kuj
      
            Review: [full review board URL with trailing slash]
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@287763 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-21 00:04:54 +00:00
Brett Bryant
0c63db0483 Merged revisions 285533 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r285533 | bbryant | 2010-09-08 16:58:43 -0400 (Wed, 08 Sep 2010) | 15 lines
  
  Merged revisions 285532 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ........
    r285532 | bbryant | 2010-09-08 16:56:12 -0400 (Wed, 08 Sep 2010) | 8 lines
    
    Fixes a bug with MeetMe where after announcing the amount of time left in a conference, if music on hold was playing, it doesn't restart.
    
    (closes issue #17408)
    Reported by: sysreq
    Patches: 
          asterisk-issue-17408_fixed.patch uploaded by sysreq (license 1009)
    Tested by: sysreq
  ........
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@285534 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-09-08 21:00:32 +00:00
Jean Galarneau
0a5c0dd75e Merged revisions 280346 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.8

................
  r280346 | jeang | 2010-07-29 11:07:16 -0500 (Thu, 29 Jul 2010) | 17 lines
  
  Merged revisions 280345 via svnmerge from 
  https://origsvn.digium.com/svn/asterisk/branches/1.6.2
  
  ................
    r280345 | jeang | 2010-07-29 11:01:35 -0500 (Thu, 29 Jul 2010) | 10 lines
    
    Merged revisions 280341 via svnmerge from 
    https://origsvn.digium.com/svn/asterisk/branches/1.4
    
    ........
      r280341 | jeang | 2010-07-29 10:52:31 -0500 (Thu, 29 Jul 2010) | 2 lines
      
      Fix a dsp structure leak occuring when a local channel is put into a meetme
      conference, then masquaraded away.
      ABE-2422
    ........
  ................
................


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@280416 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-29 16:47:23 +00:00
Tilghman Lesher
9bb8dc67e7 Ensure realtime conferences are treated the same as static conferences when trying to find an empty one.
Also, parse the useropts properly, when retrieving from realtime, and add them
to the existing flags.

(closes issue #17502)
 Reported by: kenji
 Patches: 
       20100720__issue17502.diff.txt uploaded by tilghman (license 14)
 Tested by: kenji


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278463 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-21 15:56:05 +00:00
Tilghman Lesher
b4e18d5660 Add load priority order, such that preload becomes unnecessary in most cases
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@278132 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-20 19:35:02 +00:00
Richard Mudgett
ec37ffbdaf ast_callerid restructuring
The purpose of this patch is to eliminate struct ast_callerid since it has
turned into a miscellaneous collection of various party information.

Eliminate struct ast_callerid and replace it with the following struct
organization:

struct ast_party_name {
	char *str;
	int char_set;
	int presentation;
	unsigned char valid;
};
struct ast_party_number {
	char *str;
	int plan;
	int presentation;
	unsigned char valid;
};
struct ast_party_subaddress {
	char *str;
	int type;
	unsigned char odd_even_indicator;
	unsigned char valid;
};
struct ast_party_id {
	struct ast_party_name name;
	struct ast_party_number number;
	struct ast_party_subaddress subaddress;
	char *tag;
};
struct ast_party_dialed {
	struct {
		char *str;
		int plan;
	} number;
	struct ast_party_subaddress subaddress;
	int transit_network_select;
};
struct ast_party_caller {
	struct ast_party_id id;
	char *ani;
	int ani2;
};

The new organization adds some new information as well.

* The party name and number now have their own presentation value that can
be manipulated independently.  ISDN supplies the presentation value for
the name and number at different times with the possibility that they
could be different.

* The party name and number now have a valid flag.  Before this change the
name or number string could be empty if the presentation were restricted.
Most channel drivers assume that the name or number is then simply not
available instead of indicating that the name or number was restricted.

* The party name now has a character set value.  SIP and Q.SIG have the
ability to indicate what character set a name string is using so it could
be presented properly.

* The dialed party now has a numbering plan value that could be useful to
have available.

The various channel drivers will need to be updated to support the new
core features as needed.  They have simply been converted to supply
current functionality at this time.


The following items of note were either corrected or enhanced:

* The CONNECTEDLINE() and REDIRECTING() dialplan functions were
consolidated into func_callerid.c to share party id handling code.

* CALLERPRES() is now deprecated because the name and number have their
own presentation values.

* Fixed app_alarmreceiver.c write_metadata().  The workstring[] could
contain garbage.  It also can only contain the caller id number so using
ast_callerid_parse() on it is silly.  There was also a typo in the
CALLERNAME if test.

* Fixed app_rpt.c using ast_callerid_parse() on the channel's caller id
number string.  ast_callerid_parse() alters the given buffer which in this
case is the channel's caller id number string.  Then using
ast_shrink_phone_number() could alter it even more.

* Fixed caller ID name and number memory leak in chan_usbradio.c.

* Fixed uninitialized char arrays cid_num[] and cid_name[] in
sig_analog.c.

* Protected access to a caller channel with lock in chan_sip.c.

* Clarified intent of code in app_meetme.c sla_ring_station() and
dial_trunk().  Also made save all caller ID data instead of just the name
and number strings.

* Simplified cdr.c set_one_cid().  It hand coded the ast_callerid_merge()
function.

* Corrected some weirdness with app_privacy.c's use of caller
presentation.

Review:	https://reviewboard.asterisk.org/r/702/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@276347 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2010-07-14 15:48:36 +00:00