Compare commits

...

13 Commits

Author SHA1 Message Date
Asterisk Autobuilder
a237c8b9ab Importing release summary for 10.5.1 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.1@368959 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-14 18:19:53 +00:00
Asterisk Autobuilder
3cb6dc1091 Merge r368947, update ChangeLog and version
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.1@368951 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-14 18:09:37 +00:00
Asterisk Autobuilder
80fef95152 Create 10.5.1 tag
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.1@368949 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-14 17:39:16 +00:00
Asterisk Autobuilder
ff49dcb638 Importing release summary for 10.5.0 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0@368403 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-04 13:57:09 +00:00
Asterisk Autobuilder
4e9d9f6d73 Update ChangeLog, .version, remove summaries
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0@368400 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-04 13:43:45 +00:00
Asterisk Autobuilder
35ca685a97 Create 10.5.0
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0@368397 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-06-04 13:39:07 +00:00
Asterisk Autobuilder
b1802ee1d2 Importing release summary for 10.5.0-rc2 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc2@367972 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-30 14:45:01 +00:00
Asterisk Autobuilder
4d91c8d1b7 Merge r367267,367562,367782,367844 for 10.5.0-rc2
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc2@367966 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-30 14:24:20 +00:00
Asterisk Autobuilder
08d11dbc20 Create 10.5.0-rc2
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc2@367960 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-30 13:30:01 +00:00
Asterisk Autobuilder
5d23b8751a Use autotagged externals
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc1@365142 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-03 12:58:02 +00:00
Asterisk Autobuilder
2d08c5fa46 Importing release summary for 10.5.0-rc1 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc1@365141 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-03 12:57:50 +00:00
Asterisk Autobuilder
3cdb4b5175 Importing files for 10.5.0-rc1 release.
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc1@365140 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-03 12:57:40 +00:00
Asterisk Autobuilder
b842ac2ba1 Creating tag for the release of asterisk-10.5.0-rc1
git-svn-id: https://origsvn.digium.com/svn/asterisk/tags/10.5.0-rc1@365139 65c4cc65-6c06-0410-ace0-fbb531ad65f3
2012-05-03 12:52:57 +00:00
9 changed files with 24517 additions and 22 deletions

3
.lastclean Normal file
View File

@@ -0,0 +1,3 @@
39

1
.version Normal file
View File

@@ -0,0 +1 @@
10.5.1

24292
ChangeLog Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1144,8 +1144,8 @@ static int play_sound_helper(struct conference_bridge *conference_bridge, const
struct ast_channel *underlying_channel;
/* Do not waste resources trying to play files that do not exist */
if (!ast_fileexists(filename, NULL, NULL)) {
ast_log(LOG_WARNING, "File %s does not exist in any format\n", filename);
if (!ast_strlen_zero(filename) && !ast_fileexists(filename, NULL, NULL)) {
ast_log(LOG_WARNING, "File %s does not exist in any format\n", !ast_strlen_zero(filename) ? filename : "<unknown>");
return 0;
}
@@ -1165,7 +1165,7 @@ static int play_sound_helper(struct conference_bridge *conference_bridge, const
/* The channel is all under our control, in goes the prompt */
if (!ast_strlen_zero(filename)) {
ast_stream_and_wait(conference_bridge->playback_chan, filename, "");
} else {
} else if (say_number >= 0) {
ast_say_number(conference_bridge->playback_chan, say_number, "", conference_bridge->playback_chan->language, NULL);
}
@@ -1188,7 +1188,7 @@ static int play_sound_helper(struct conference_bridge *conference_bridge, const
*/
static int play_sound_file(struct conference_bridge *conference_bridge, const char *filename)
{
return play_sound_helper(conference_bridge, filename, 0);
return play_sound_helper(conference_bridge, filename, -1);
}
/*!

View File

@@ -0,0 +1,61 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /><title>Release Summary - asterisk-10.5.1</title></head>
<body>
<h1 align="center"><a name="top">Release Summary</a></h1>
<h3 align="center">asterisk-10.5.1</h3>
<h3 align="center">Date: 2012-06-14</h3>
<h3 align="center">&lt;asteriskteam@digium.com&gt;</h3>
<hr/>
<h2 align="center">Table of Contents</h2>
<ol>
<li><a href="#summary">Summary</a></li>
<li><a href="#contributors">Contributors</a></li>
<li><a href="#commits">Other Changes</a></li>
<li><a href="#diffstat">Diffstat</a></li>
</ol>
<hr/>
<a name="summary"><h2 align="center">Summary</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This release has been made to address one or more security vulnerabilities that have been identified. A security advisory document has been published for each vulnerability that includes additional information. Users of versions of Asterisk that are affected are strongly encouraged to review the advisories and determine what action they should take to protect their systems from these issues.</p>
<p>Security Advisories: <a href="http://downloads.asterisk.org/pub/security/AST-2012-009.html">AST-2012-009</a></p>
<p>The data in this summary reflects changes that have been made since the previous release, asterisk-10.5.0.</p>
<hr/>
<a name="contributors"><h2 align="center">Contributors</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This table lists the people who have submitted code, those that have tested patches, as well as those that reported issues on the issue tracker that were resolved in this release. For coders, the number is how many of their patches (of any size) were committed into this release. For testers, the number is the number of times their name was listed as assisting with testing a patch. Finally, for reporters, the number is the number of issues that they reported that were closed by commits that went into this release.</p>
<table width="100%" border="0">
<tr>
<td width="33%"><h3>Coders</h3></td>
<td width="33%"><h3>Testers</h3></td>
<td width="33%"><h3>Reporters</h3></td>
</tr>
<tr valign="top">
<td>
2 bebuild<br/>
</td>
<td>
</td>
<td>
</td>
</tr>
</table>
<hr/>
<a name="commits"><h2 align="center">Commits Not Associated with an Issue</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a list of all changes that went into this release that did not directly close an issue from the issue tracker. The commits may have been marked as being related to an issue. If that is the case, the issue numbers are listed here, as well.</p>
<table width="100%" border="1">
<tr><td><b>Revision</b></td><td><b>Author</b></td><td><b>Summary</b></td><td><b>Issues Referenced</b></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/tags/10.5.1?view=revision&revision=368949">368949</a></td><td>bebuild</td><td>Create 10.5.1 tag</td>
<td></td></tr><tr><td><a href="http://svn.digium.com/view/asterisk/tags/10.5.1?view=revision&revision=368951">368951</a></td><td>bebuild</td><td>Merge r368947, update ChangeLog and version</td>
<td></td></tr></table>
<hr/>
<a name="diffstat"><h2 align="center">Diffstat Results</h2></a>
<center><a href="#top">[Back to Top]</a></center><br/><p>This is a summary of the changes to the source code that went into this release that was generated using the diffstat utility.</p>
<pre>
.version | 2
ChangeLog | 6
asterisk-10.5.0-summary.html | 482 --------------------------------
asterisk-10.5.0-summary.txt | 640 -------------------------------------------
channels/chan_skinny.c | 14
5 files changed, 19 insertions(+), 1125 deletions(-)
</pre><br/>
<hr/>
</body>
</html>

View File

@@ -0,0 +1,90 @@
Release Summary
asterisk-10.5.1
Date: 2012-06-14
<asteriskteam@digium.com>
----------------------------------------------------------------------
Table of Contents
1. Summary
2. Contributors
3. Other Changes
4. Diffstat
----------------------------------------------------------------------
Summary
[Back to Top]
This release has been made to address one or more security vulnerabilities
that have been identified. A security advisory document has been published
for each vulnerability that includes additional information. Users of
versions of Asterisk that are affected are strongly encouraged to review
the advisories and determine what action they should take to protect their
systems from these issues.
Security Advisories: AST-2012-009
The data in this summary reflects changes that have been made since the
previous release, asterisk-10.5.0.
----------------------------------------------------------------------
Contributors
[Back to Top]
This table lists the people who have submitted code, those that have
tested patches, as well as those that reported issues on the issue tracker
that were resolved in this release. For coders, the number is how many of
their patches (of any size) were committed into this release. For testers,
the number is the number of times their name was listed as assisting with
testing a patch. Finally, for reporters, the number is the number of
issues that they reported that were closed by commits that went into this
release.
Coders Testers Reporters
2 bebuild
----------------------------------------------------------------------
Commits Not Associated with an Issue
[Back to Top]
This is a list of all changes that went into this release that did not
directly close an issue from the issue tracker. The commits may have been
marked as being related to an issue. If that is the case, the issue
numbers are listed here, as well.
+------------------------------------------------------------------------+
| Revision | Author | Summary | Issues Referenced |
|----------+---------+-------------------------------+-------------------|
| 368949 | bebuild | Create 10.5.1 tag | |
|----------+---------+-------------------------------+-------------------|
| 368951 | bebuild | Merge r368947, update | |
| | | ChangeLog and version | |
+------------------------------------------------------------------------+
----------------------------------------------------------------------
Diffstat Results
[Back to Top]
This is a summary of the changes to the source code that went into this
release that was generated using the diffstat utility.
.version | 2
ChangeLog | 6
asterisk-10.5.0-summary.html | 482 --------------------------------
asterisk-10.5.0-summary.txt | 640 -------------------------------------------
channels/chan_skinny.c | 14
5 files changed, 19 insertions(+), 1125 deletions(-)
----------------------------------------------------------------------

View File

@@ -1922,24 +1922,25 @@ static void send_signaling(struct chan_iax2_pvt *pvt)
* we have received a destination call number. */
static int queue_signalling(struct chan_iax2_pvt *pvt, struct ast_frame *f)
{
struct signaling_queue_entry *new;
struct signaling_queue_entry *qe;
if (f->frametype == AST_FRAME_IAX || !pvt->hold_signaling) {
return 1; /* do not queue this frame */
} else if (!(new = ast_calloc(1, sizeof(struct signaling_queue_entry)))) {
} else if (!(qe = ast_calloc(1, sizeof(struct signaling_queue_entry)))) {
return -1; /* out of memory */
}
memcpy(&new->f, f, sizeof(new->f)); /* copy ast_frame into our queue entry */
if (new->f.datalen) { /* if there is data in this frame copy it over as well */
if (!(new->f.data.ptr = ast_calloc(1, new->f.datalen))) {
free_signaling_queue_entry(new);
/* copy ast_frame into our queue entry */
qe->f = *f;
if (qe->f.datalen) {
/* if there is data in this frame copy it over as well */
if (!(qe->f.data.ptr = ast_malloc(qe->f.datalen))) {
free_signaling_queue_entry(qe);
return -1;
}
memcpy(new->f.data.ptr, f->data.ptr, sizeof(*new->f.data.ptr));
memcpy(qe->f.data.ptr, f->data.ptr, qe->f.datalen);
}
AST_LIST_INSERT_TAIL(&pvt->signaling_queue, new, next);
AST_LIST_INSERT_TAIL(&pvt->signaling_queue, qe, next);
return 0;
}
@@ -4244,6 +4245,15 @@ static int schedule_delivery(struct iax_frame *fr, int updatehistory, int fromtr
struct ast_channel *owner = NULL;
struct ast_channel *bridge = NULL;
/*
* Clear fr->af.data if there is no data in the buffer. Things
* like AST_CONTROL_HOLD without a suggested music class must
* have a NULL pointer.
*/
if (!fr->af.datalen) {
memset(&fr->af.data, 0, sizeof(fr->af.data));
}
/* Attempt to recover wrapped timestamps */
unwrap_timestamp(fr);

View File

@@ -12789,13 +12789,14 @@ static int __sip_subscribe_mwi_do(struct sip_subscription_mwi *mwi)
/* If we have no DNS manager let's do a lookup */
if (!mwi->dnsmgr) {
char transport[MAXHOSTNAMELEN];
struct sip_subscription_mwi *saved;
snprintf(transport, sizeof(transport), "_%s._%s", get_srv_service(mwi->transport), get_srv_protocol(mwi->transport));
mwi->us.ss.ss_family = get_address_family_filter(&bindaddr); /* Filter address family */
ASTOBJ_REF(mwi); /* Add a ref for storing the mwi on the dnsmgr for updates */
ast_dnsmgr_lookup_cb(mwi->hostname, &mwi->us, &mwi->dnsmgr, sip_cfg.srvlookup ? transport : NULL, on_dns_update_mwi, mwi);
saved = ASTOBJ_REF(mwi);
ast_dnsmgr_lookup_cb(mwi->hostname, &mwi->us, &mwi->dnsmgr, sip_cfg.srvlookup ? transport : NULL, on_dns_update_mwi, saved);
if (!mwi->dnsmgr) {
ASTOBJ_UNREF(mwi, sip_subscribe_mwi_destroy); /* dnsmgr disabled, remove reference */
ASTOBJ_UNREF(saved, sip_subscribe_mwi_destroy); /* dnsmgr disabled, remove reference */
}
}
@@ -30492,10 +30493,12 @@ static void sip_send_all_registers(void)
static void sip_send_all_mwi_subscriptions(void)
{
ASTOBJ_CONTAINER_TRAVERSE(&submwil, 1, do {
struct sip_subscription_mwi *saved;
ASTOBJ_WRLOCK(iterator);
AST_SCHED_DEL(sched, iterator->resub);
if ((iterator->resub = ast_sched_add(sched, 1, sip_subscribe_mwi_do, ASTOBJ_REF(iterator))) < 0) {
ASTOBJ_UNREF(iterator, sip_subscribe_mwi_destroy);
saved = ASTOBJ_REF(iterator);
if ((iterator->resub = ast_sched_add(sched, 1, sip_subscribe_mwi_do, saved)) < 0) {
ASTOBJ_UNREF(saved, sip_subscribe_mwi_destroy);
}
ASTOBJ_UNLOCK(iterator);
} while (0));

View File

@@ -3104,6 +3104,10 @@ static void update_connectedline(struct skinny_subchannel *sub, const void *data
struct skinny_line *l = sub->line;
struct skinny_device *d = l->device;
if (!d) {
return;
}
if (!c->caller.id.number.valid
|| ast_strlen_zero(c->caller.id.number.str)
|| !c->connected.id.number.valid
@@ -4224,6 +4228,11 @@ static void *skinny_ss(void *data)
int res = 0;
int loop_pause = 100;
if (!d) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return NULL;
}
ast_verb(3, "Starting simple switch on '%s@%s'\n", l->name, d->name);
len = strlen(sub->exten);
@@ -4332,7 +4341,7 @@ static int skinny_call(struct ast_channel *ast, char *dest, int timeout)
struct ast_var_t *current;
int doautoanswer = 0;
if (!d->registered) {
if (!d || !d->registered) {
ast_log(LOG_ERROR, "Device not registered, cannot call %s\n", dest);
return -1;
}
@@ -4731,7 +4740,13 @@ static int skinny_indicate(struct ast_channel *ast, int ind, const void *data, s
struct skinny_subchannel *sub = ast->tech_pvt;
struct skinny_line *l = sub->line;
struct skinny_device *d = l->device;
struct skinnysession *s = d->session;
struct skinnysession *s;
if (!d) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return -1;
}
s = d->session;
if (!s) {
ast_log(LOG_NOTICE, "Asked to indicate '%s' condition on channel %s, but session does not exist.\n", control2str(ind), ast->name);
@@ -4961,6 +4976,11 @@ static void setsubstate(struct skinny_subchannel *sub, int state)
pthread_t t;
int actualstate = state;
if (!l->device) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return;
}
if (sub->substate == SUBSTATE_ONHOOK) {
return;
}
@@ -5350,15 +5370,20 @@ static void dumpsub(struct skinny_subchannel *sub, int forcehangup)
struct skinny_subchannel *activatesub = NULL;
struct skinny_subchannel *tsub;
if (!l->device) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return;
}
if (skinnydebug) {
ast_verb(3, "Sub %d - Dumping\n", sub->callid);
}
if (!forcehangup && sub->substate == SUBSTATE_HOLD) {
l->activesub = NULL;
return;
}
if (sub == l->activesub) {
d->hookstate = SKINNY_ONHOOK;
transmit_speaker_mode(d, SKINNY_SPEAKEROFF);
@@ -5462,6 +5487,11 @@ static int handle_transfer_button(struct skinny_subchannel *sub)
l = sub->line;
d = l->device;
if (!d) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return -1;
}
if (!sub->related) {
/* Another sub has not been created so this must be first XFER press */
if (!(sub->substate == SUBSTATE_HOLD)) {
@@ -5506,6 +5536,11 @@ static int handle_callforward_button(struct skinny_subchannel *sub, int cfwdtype
struct skinny_device *d = l->device;
struct ast_channel *c = sub->owner;
if (!d) {
ast_log(LOG_WARNING, "Device for line %s is not registered.\n", l->name);
return 0;
}
if (d->hookstate == SKINNY_ONHOOK) {
d->hookstate = SKINNY_OFFHOOK;
transmit_speaker_mode(d, SKINNY_SPEAKERON);