Re: [asterisk-dev] [Code Review] 4442: chan_sip: Asterisk fails to re-activate an inactive media session when an offer does not contain a=sendrecv

2015-02-24 Thread wdoekes

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4442/#review14522
---


I don't see the *_no_direction.xml files.


./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml
https://reviewboard.asterisk.org/r/4442/#comment25076

Heh, that was sloppy ;)


- wdoekes


On Feb. 23, 2015, 9:38 p.m., Ashley Sanders wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4442/
 ---
 
 (Updated Feb. 23, 2015, 9:38 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24824
 https://issues.asterisk.org/jira/browse/ASTERISK-24824
 
 
 Repository: testsuite
 
 
 Description
 ---
 
 This test is to ensure that Asterisk correctly applies the direction of the 
 media stream when a=sendonly|recvonly|inactive|sendrecv is missing from the 
 offer's SDP. The expected behavior is for Asterisk to apply sendrecv as the 
 direction of the media stream when no direction attribute is present in an 
 offer's SDP. According to RFC 4566 (Section 6. SDP Attributes): If none of 
 the attributes sendonly, recvonly, inactive, and sendrecv is present, 
 sendrecv SHOULD be assumed as the default for sessions that are not of the 
 conference type broadcast or H332 [...]
 
 The test scenario:
 
 1. From Phone A, send an offer to Phone B to establish a call
 2. From Phone B, send an offer to Phone A to put the call on hold. 
 3. Observe that the MOH start event occurs.
 4. From Phone B, send an offer to Phone A to 'un-hold' the call (ensure that 
 the direction attribute from the offer's SDP is omitted)
 5. Observe that the MOH stop event occurs.
 
 Presently, this test fails for certain versions of Asterisk. From what I can 
 tell, it is present from (at least) 1.8.21 up to the 11 branch.
 
 ***Note*** This is the test. It is only the test. The update to the Asterisk 
 source is coming soon to a review board near you (well, this review board).
 
 
 Diffs
 -
 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_media_restrict.xml 
 6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_restrict.xml 
 6458 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml
  6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/run-test 6458 
 
 Diff: https://reviewboard.asterisk.org/r/4442/diff/
 
 
 Testing
 ---
 
 
 Thanks,
 
 Ashley Sanders
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4442: chan_sip: Asterisk fails to re-activate an inactive media session when an offer does not contain a=sendrecv

2015-02-24 Thread Matt Jordan


 On Feb. 24, 2015, 2:29 a.m., wdoekes wrote:
  ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml,
   line 213
  https://reviewboard.asterisk.org/r/4442/diff/1/?file=71571#file71571line213
 
  Heh, that was sloppy ;)

I blame whoever wrote this test initially.

/me hides


- Matt


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4442/#review14522
---


On Feb. 23, 2015, 3:38 p.m., Ashley Sanders wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4442/
 ---
 
 (Updated Feb. 23, 2015, 3:38 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24824
 https://issues.asterisk.org/jira/browse/ASTERISK-24824
 
 
 Repository: testsuite
 
 
 Description
 ---
 
 This test is to ensure that Asterisk correctly applies the direction of the 
 media stream when a=sendonly|recvonly|inactive|sendrecv is missing from the 
 offer's SDP. The expected behavior is for Asterisk to apply sendrecv as the 
 direction of the media stream when no direction attribute is present in an 
 offer's SDP. According to RFC 4566 (Section 6. SDP Attributes): If none of 
 the attributes sendonly, recvonly, inactive, and sendrecv is present, 
 sendrecv SHOULD be assumed as the default for sessions that are not of the 
 conference type broadcast or H332 [...]
 
 The test scenario:
 
 1. From Phone A, send an offer to Phone B to establish a call
 2. From Phone B, send an offer to Phone A to put the call on hold. 
 3. Observe that the MOH start event occurs.
 4. From Phone B, send an offer to Phone A to 'un-hold' the call (ensure that 
 the direction attribute from the offer's SDP is omitted)
 5. Observe that the MOH stop event occurs.
 
 Presently, this test fails for certain versions of Asterisk. From what I can 
 tell, it is present from (at least) 1.8.21 up to the 11 branch.
 
 ***Note*** This is the test. It is only the test. The update to the Asterisk 
 source is coming soon to a review board near you (well, this review board).
 
 
 Diffs
 -
 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_media_restrict.xml 
 6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_restrict.xml 
 6458 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml
  6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/run-test 6458 
 
 Diff: https://reviewboard.asterisk.org/r/4442/diff/
 
 
 Testing
 ---
 
 
 Thanks,
 
 Ashley Sanders
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4379: Example configuration scenario - Super Awesome Company: Phase 1 - Patch 1

2015-02-24 Thread Matt Jordan

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4379/#review14524
---

Ship it!


Ship It!

- Matt Jordan


On Feb. 24, 2015, 7:20 a.m., rnewton wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4379/
 ---
 
 (Updated Feb. 24, 2015, 7:20 a.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 One of things discussed at the last AstriDevCon was better documentation (for 
 everything!), but in particular, we mentioned needing some example 
 configurations that pertain to a real-world scenario. That is, as opposed to 
 the current sample files which are sort of all over the place at this point.
 
 This patch proposes a basic and minimal configuration of Asterisk to satisfy 
 the requirements for the first phase of Super Awesome Company's 
 implementation of Asterisk.
 
 I will submit four separate patches for the first phase, so that we don't 
 have to review the entire thing all at once. This review is for the first 
 patch.
 
 Who is Super Awesome Company? See 
 https://wiki.asterisk.org/wiki/display/AST/Super+Awesome+Company
 
 For the first patch, I am attempting to satisfy the below requirements. The 
 patch does not include a new make target, as I believe Matt Jordan offered to 
 handle that.
 
 SAC requires:
 
 * PJSIP connectivity for all employee desk phones.
 * The ability for employees to call one another inside of the office.
 * Voicemail boxes for each of the employees.
 
 Basic configuration
 
 We want SAC to have a clean system. That means:
 
 * No 'autoload' in modules.conf. Explicitly load a basic configuration. 
 If SAC doesn't need the module, don't load it.
 * Every module loaded should have a configuration file that is 
 appropriate for it. This includes all the 'core' things that need 
 configuration.
 
 pjsip.conf
 
 * A PJSIP configuration for their desk phones. Assume every endpoint that 
 is a phone has:
 * A voicemail mailbox that they can subscribe to
 * A hint for their device
 * Note that the PJSIP configuration should adhere to best practices. 
 That means MAC addresses for device names, etc.
 
 extensions.conf
 
 * A safe dialplan for intra-company communication. This should be 
 templated out so that it is trivial to add additional devices (use pattern 
 matching/pattern matching hints, etc.)
 * Receiving a Busy/Unavailable should result in going to VoiceMail
 * A user should be able to dial something and get to their VoiceMailMain 
 without having to enter in their extension number 
 * Note that mapping of MAC address endpoints to extension numbers should 
 be done in some fashion that is easily extensible.
 
 voicemail.conf
 
 * Set up mailboxes for every person in SAC. Assign 'default' pins. Create 
 reasonable basic settings.
 * Do not set up e-mail or pager addresses.
 
 
 REVIEW?
 
 Please, if possible look at this from a few angles:
 
  * Use the configuration, configure a couple phones and call between them. 
 Leave voicemails and retrieve them.
  * Have I created any security issues?
  * Is my dialplan easy to understand?
  * Could anything be done more efficiently without making it over-complicated?
  * Have I over-complicated anything?
  * Are there any critical settings I'm missing from any of the files?
 
 A couple, more specific questions:
 
  * We have sample configs in /configs/samples; what directory do we want 
 these configurations in? (I used /configs/examples for now, but I don't 
 really like it)
  * We have the make target make samples for the current samples; what do we 
 want for these new configs?
 
 
 Diffs
 -
 
   /branches/13/configs/examples/awesome/voicemail.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/pjsip.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/musiconhold.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/modules.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/logger.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/indications.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/extensions.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/asterisk.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/README PRE-CREATION 
 
 Diff: https://reviewboard.asterisk.org/r/4379/diff/
 
 
 Testing
 ---
 
 Setup Asterisk with configuration, connected up three phones using the first 
 three users. Made calls between them all, left voicemails and retrieved them 
 with all users. Verified MWI working with all phones.
 
 
 Thanks,
 
 rnewton
 


-- 

Re: [asterisk-dev] [Code Review] 4379: Example configuration scenario - Super Awesome Company: Phase 1 - Patch 1

2015-02-24 Thread Joshua Colp

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4379/#review14526
---

Ship it!


Ship It!

- Joshua Colp


On Feb. 24, 2015, 1:20 p.m., rnewton wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4379/
 ---
 
 (Updated Feb. 24, 2015, 1:20 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 One of things discussed at the last AstriDevCon was better documentation (for 
 everything!), but in particular, we mentioned needing some example 
 configurations that pertain to a real-world scenario. That is, as opposed to 
 the current sample files which are sort of all over the place at this point.
 
 This patch proposes a basic and minimal configuration of Asterisk to satisfy 
 the requirements for the first phase of Super Awesome Company's 
 implementation of Asterisk.
 
 I will submit four separate patches for the first phase, so that we don't 
 have to review the entire thing all at once. This review is for the first 
 patch.
 
 Who is Super Awesome Company? See 
 https://wiki.asterisk.org/wiki/display/AST/Super+Awesome+Company
 
 For the first patch, I am attempting to satisfy the below requirements. The 
 patch does not include a new make target, as I believe Matt Jordan offered to 
 handle that.
 
 SAC requires:
 
 * PJSIP connectivity for all employee desk phones.
 * The ability for employees to call one another inside of the office.
 * Voicemail boxes for each of the employees.
 
 Basic configuration
 
 We want SAC to have a clean system. That means:
 
 * No 'autoload' in modules.conf. Explicitly load a basic configuration. 
 If SAC doesn't need the module, don't load it.
 * Every module loaded should have a configuration file that is 
 appropriate for it. This includes all the 'core' things that need 
 configuration.
 
 pjsip.conf
 
 * A PJSIP configuration for their desk phones. Assume every endpoint that 
 is a phone has:
 * A voicemail mailbox that they can subscribe to
 * A hint for their device
 * Note that the PJSIP configuration should adhere to best practices. 
 That means MAC addresses for device names, etc.
 
 extensions.conf
 
 * A safe dialplan for intra-company communication. This should be 
 templated out so that it is trivial to add additional devices (use pattern 
 matching/pattern matching hints, etc.)
 * Receiving a Busy/Unavailable should result in going to VoiceMail
 * A user should be able to dial something and get to their VoiceMailMain 
 without having to enter in their extension number 
 * Note that mapping of MAC address endpoints to extension numbers should 
 be done in some fashion that is easily extensible.
 
 voicemail.conf
 
 * Set up mailboxes for every person in SAC. Assign 'default' pins. Create 
 reasonable basic settings.
 * Do not set up e-mail or pager addresses.
 
 
 REVIEW?
 
 Please, if possible look at this from a few angles:
 
  * Use the configuration, configure a couple phones and call between them. 
 Leave voicemails and retrieve them.
  * Have I created any security issues?
  * Is my dialplan easy to understand?
  * Could anything be done more efficiently without making it over-complicated?
  * Have I over-complicated anything?
  * Are there any critical settings I'm missing from any of the files?
 
 A couple, more specific questions:
 
  * We have sample configs in /configs/samples; what directory do we want 
 these configurations in? (I used /configs/examples for now, but I don't 
 really like it)
  * We have the make target make samples for the current samples; what do we 
 want for these new configs?
 
 
 Diffs
 -
 
   /branches/13/configs/examples/awesome/voicemail.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/pjsip.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/musiconhold.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/modules.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/logger.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/indications.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/extensions.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/asterisk.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/README PRE-CREATION 
 
 Diff: https://reviewboard.asterisk.org/r/4379/diff/
 
 
 Testing
 ---
 
 Setup Asterisk with configuration, connected up three phones using the first 
 three users. Made calls between them all, left voicemails and retrieved them 
 with all users. Verified MWI working with all phones.
 
 
 Thanks,
 
 rnewton
 


-- 

Re: [asterisk-dev] [Code Review] 4443: dial api: add self destruction option

2015-02-24 Thread Joshua Colp

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4443/#review14527
---



/branches/13/main/dial.c
https://reviewboard.asterisk.org/r/4443/#comment25079

I'm personally a fan of always doing an enum ast_dial_result state = 
dial-state and only having the one return path. But that's just me.


- Joshua Colp


On Feb. 23, 2015, 11:26 p.m., Scott Griepentrog wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4443/
 ---
 
 (Updated Feb. 23, 2015, 11:26 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 This adds a self-destruction ability to the dial api.  The usefulness of this 
 is mostly when using async mode to spawn a separate thread to handle the new 
 call, while the calling thread is allowed to go on about other business.  The 
 alternative of this option is that the calling thread must either hang around 
 for the duration or spawn it's own thread in order to create and then later 
 destroy the dial structure after the call completes.
 
 Example (minus error checking):
 
 struct ast_dial *dial = ast_dial_create();
 
 ast_dial_append(dial, PJSIP, 200, NULL);
 
 ast_dial_option_global_enable(dial, AST_DIAL_OPTION_ANSWER_EXEC, Echo);
 ast_dial_option_global_enable(dial, AST_DIAL_OPTION_SELF_DESTROY, NULL);
 
 ast_dial_run(dial, NULL, 1);
 
 The dial_run call returns almost immediately after spawning a new thread to 
 complete and monitor the dial.  If the call is answered, it is put into echo. 
  When completed, ast_dial_destroy() will be called on the dial structure.
 
 Note that any allocations made to pass values to ast_dial_set_user_data() or 
 other dial options will need to be free'd in a state callback function on any 
 of AST_DIAL_RESULT_UNASWERED, AST_DIAL_RESULT_ANSWERED, 
 AST_DIAL_RESULT_HANGUP, or AST_DIAL_RESULT_TIMEOUT.
 
 
 Diffs
 -
 
   /branches/13/main/dial.c 432173 
   /branches/13/include/asterisk/dial.h 432173 
 
 Diff: https://reviewboard.asterisk.org/r/4443/diff/
 
 
 Testing
 ---
 
 Correct operation confirmed with a temporary test function running under 
 valgrind to insure there are no invalid references or leaks.
 
 
 Thanks,
 
 Scott Griepentrog
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4379: Example configuration scenario - Super Awesome Company: Phase 1 - Patch 1

2015-02-24 Thread rnewton


 On Feb. 20, 2015, 2:37 p.m., Matt Jordan wrote:
  /branches/13/configs/examples/awesome/extensions.conf, lines 29-31
  https://reviewboard.asterisk.org/r/4379/diff/2/?file=71364#file71364line29
 
  Is this comment correct still with this pattern match?

Nope. Fixed. I also adjusted the pattern match here and for hints as for the 
current users we only need '_11XX' .


- rnewton


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4379/#review14511
---


On Feb. 13, 2015, 12:46 a.m., rnewton wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4379/
 ---
 
 (Updated Feb. 13, 2015, 12:46 a.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 One of things discussed at the last AstriDevCon was better documentation (for 
 everything!), but in particular, we mentioned needing some example 
 configurations that pertain to a real-world scenario. That is, as opposed to 
 the current sample files which are sort of all over the place at this point.
 
 This patch proposes a basic and minimal configuration of Asterisk to satisfy 
 the requirements for the first phase of Super Awesome Company's 
 implementation of Asterisk.
 
 I will submit four separate patches for the first phase, so that we don't 
 have to review the entire thing all at once. This review is for the first 
 patch.
 
 Who is Super Awesome Company? See 
 https://wiki.asterisk.org/wiki/display/AST/Super+Awesome+Company
 
 For the first patch, I am attempting to satisfy the below requirements. The 
 patch does not include a new make target, as I believe Matt Jordan offered to 
 handle that.
 
 SAC requires:
 
 * PJSIP connectivity for all employee desk phones.
 * The ability for employees to call one another inside of the office.
 * Voicemail boxes for each of the employees.
 
 Basic configuration
 
 We want SAC to have a clean system. That means:
 
 * No 'autoload' in modules.conf. Explicitly load a basic configuration. 
 If SAC doesn't need the module, don't load it.
 * Every module loaded should have a configuration file that is 
 appropriate for it. This includes all the 'core' things that need 
 configuration.
 
 pjsip.conf
 
 * A PJSIP configuration for their desk phones. Assume every endpoint that 
 is a phone has:
 * A voicemail mailbox that they can subscribe to
 * A hint for their device
 * Note that the PJSIP configuration should adhere to best practices. 
 That means MAC addresses for device names, etc.
 
 extensions.conf
 
 * A safe dialplan for intra-company communication. This should be 
 templated out so that it is trivial to add additional devices (use pattern 
 matching/pattern matching hints, etc.)
 * Receiving a Busy/Unavailable should result in going to VoiceMail
 * A user should be able to dial something and get to their VoiceMailMain 
 without having to enter in their extension number 
 * Note that mapping of MAC address endpoints to extension numbers should 
 be done in some fashion that is easily extensible.
 
 voicemail.conf
 
 * Set up mailboxes for every person in SAC. Assign 'default' pins. Create 
 reasonable basic settings.
 * Do not set up e-mail or pager addresses.
 
 
 REVIEW?
 
 Please, if possible look at this from a few angles:
 
  * Use the configuration, configure a couple phones and call between them. 
 Leave voicemails and retrieve them.
  * Have I created any security issues?
  * Is my dialplan easy to understand?
  * Could anything be done more efficiently without making it over-complicated?
  * Have I over-complicated anything?
  * Are there any critical settings I'm missing from any of the files?
 
 A couple, more specific questions:
 
  * We have sample configs in /configs/samples; what directory do we want 
 these configurations in? (I used /configs/examples for now, but I don't 
 really like it)
  * We have the make target make samples for the current samples; what do we 
 want for these new configs?
 
 
 Diffs
 -
 
   /branches/13/configs/examples/awesome/voicemail.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/pjsip.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/musiconhold.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/modules.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/logger.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/indications.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/extensions.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/asterisk.conf PRE-CREATION 
   /branches/13/configs/examples/awesome/README PRE-CREATION 
 
 Diff: 

Re: [asterisk-dev] [Code Review] 4379: Example configuration scenario - Super Awesome Company: Phase 1 - Patch 1

2015-02-24 Thread rnewton

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4379/
---

(Updated Feb. 24, 2015, 1:20 p.m.)


Review request for Asterisk Developers.


Repository: Asterisk


Description
---

One of things discussed at the last AstriDevCon was better documentation (for 
everything!), but in particular, we mentioned needing some example 
configurations that pertain to a real-world scenario. That is, as opposed to 
the current sample files which are sort of all over the place at this point.

This patch proposes a basic and minimal configuration of Asterisk to satisfy 
the requirements for the first phase of Super Awesome Company's implementation 
of Asterisk.

I will submit four separate patches for the first phase, so that we don't have 
to review the entire thing all at once. This review is for the first patch.

Who is Super Awesome Company? See 
https://wiki.asterisk.org/wiki/display/AST/Super+Awesome+Company

For the first patch, I am attempting to satisfy the below requirements. The 
patch does not include a new make target, as I believe Matt Jordan offered to 
handle that.

SAC requires:

* PJSIP connectivity for all employee desk phones.
* The ability for employees to call one another inside of the office.
* Voicemail boxes for each of the employees.

Basic configuration

We want SAC to have a clean system. That means:

* No 'autoload' in modules.conf. Explicitly load a basic configuration. If 
SAC doesn't need the module, don't load it.
* Every module loaded should have a configuration file that is appropriate 
for it. This includes all the 'core' things that need configuration.

pjsip.conf

* A PJSIP configuration for their desk phones. Assume every endpoint that 
is a phone has:
* A voicemail mailbox that they can subscribe to
* A hint for their device
* Note that the PJSIP configuration should adhere to best practices. 
That means MAC addresses for device names, etc.

extensions.conf

* A safe dialplan for intra-company communication. This should be templated 
out so that it is trivial to add additional devices (use pattern 
matching/pattern matching hints, etc.)
* Receiving a Busy/Unavailable should result in going to VoiceMail
* A user should be able to dial something and get to their VoiceMailMain 
without having to enter in their extension number 
* Note that mapping of MAC address endpoints to extension numbers should be 
done in some fashion that is easily extensible.

voicemail.conf

* Set up mailboxes for every person in SAC. Assign 'default' pins. Create 
reasonable basic settings.
* Do not set up e-mail or pager addresses.


REVIEW?

Please, if possible look at this from a few angles:

 * Use the configuration, configure a couple phones and call between them. 
Leave voicemails and retrieve them.
 * Have I created any security issues?
 * Is my dialplan easy to understand?
 * Could anything be done more efficiently without making it over-complicated?
 * Have I over-complicated anything?
 * Are there any critical settings I'm missing from any of the files?

A couple, more specific questions:

 * We have sample configs in /configs/samples; what directory do we want these 
configurations in? (I used /configs/examples for now, but I don't really like 
it)
 * We have the make target make samples for the current samples; what do we 
want for these new configs?


Diffs (updated)
-

  /branches/13/configs/examples/awesome/voicemail.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/pjsip.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/musiconhold.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/modules.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/logger.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/indications.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/extensions.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/asterisk.conf PRE-CREATION 
  /branches/13/configs/examples/awesome/README PRE-CREATION 

Diff: https://reviewboard.asterisk.org/r/4379/diff/


Testing
---

Setup Asterisk with configuration, connected up three phones using the first 
three users. Made calls between them all, left voicemails and retrieved them 
with all users. Verified MWI working with all phones.


Thanks,

rnewton

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4443: dial api: add self destruction option

2015-02-24 Thread Joshua Colp

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4443/#review14528
---

Ship it!


Ship It!

- Joshua Colp


On Feb. 23, 2015, 11:26 p.m., Scott Griepentrog wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4443/
 ---
 
 (Updated Feb. 23, 2015, 11:26 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 This adds a self-destruction ability to the dial api.  The usefulness of this 
 is mostly when using async mode to spawn a separate thread to handle the new 
 call, while the calling thread is allowed to go on about other business.  The 
 alternative of this option is that the calling thread must either hang around 
 for the duration or spawn it's own thread in order to create and then later 
 destroy the dial structure after the call completes.
 
 Example (minus error checking):
 
 struct ast_dial *dial = ast_dial_create();
 
 ast_dial_append(dial, PJSIP, 200, NULL);
 
 ast_dial_option_global_enable(dial, AST_DIAL_OPTION_ANSWER_EXEC, Echo);
 ast_dial_option_global_enable(dial, AST_DIAL_OPTION_SELF_DESTROY, NULL);
 
 ast_dial_run(dial, NULL, 1);
 
 The dial_run call returns almost immediately after spawning a new thread to 
 complete and monitor the dial.  If the call is answered, it is put into echo. 
  When completed, ast_dial_destroy() will be called on the dial structure.
 
 Note that any allocations made to pass values to ast_dial_set_user_data() or 
 other dial options will need to be free'd in a state callback function on any 
 of AST_DIAL_RESULT_UNASWERED, AST_DIAL_RESULT_ANSWERED, 
 AST_DIAL_RESULT_HANGUP, or AST_DIAL_RESULT_TIMEOUT.
 
 
 Diffs
 -
 
   /branches/13/main/dial.c 432173 
   /branches/13/include/asterisk/dial.h 432173 
 
 Diff: https://reviewboard.asterisk.org/r/4443/diff/
 
 
 Testing
 ---
 
 Correct operation confirmed with a temporary test function running under 
 valgrind to insure there are no invalid references or leaks.
 
 
 Thanks,
 
 Scott Griepentrog
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4442: chan_sip: Asterisk fails to re-activate an inactive media session when an offer does not contain a=sendrecv

2015-02-24 Thread Ashley Sanders

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4442/
---

(Updated Feb. 24, 2015, 12:47 p.m.)


Review request for Asterisk Developers.


Changes
---

Added the missing *_no_direction.xml files from the previous diff.


Bugs: ASTERISK-24824
https://issues.asterisk.org/jira/browse/ASTERISK-24824


Repository: testsuite


Description
---

This test is to ensure that Asterisk correctly applies the direction of the 
media stream when a=sendonly|recvonly|inactive|sendrecv is missing from the 
offer's SDP. The expected behavior is for Asterisk to apply sendrecv as the 
direction of the media stream when no direction attribute is present in an 
offer's SDP. According to RFC 4566 (Section 6. SDP Attributes): If none of the 
attributes sendonly, recvonly, inactive, and sendrecv is present, 
sendrecv SHOULD be assumed as the default for sessions that are not of the 
conference type broadcast or H332 [...]

The test scenario:

1. From Phone A, send an offer to Phone B to establish a call
2. From Phone B, send an offer to Phone A to put the call on hold. 
3. Observe that the MOH start event occurs.
4. From Phone B, send an offer to Phone A to 'un-hold' the call (ensure that 
the direction attribute from the offer's SDP is omitted)
5. Observe that the MOH stop event occurs.

Presently, this test fails for certain versions of Asterisk. From what I can 
tell, it is present from (at least) 1.8.21 up to the 11 branch.

***Note*** This is the test. It is only the test. The update to the Asterisk 
source is coming soon to a review board near you (well, this review board).


Diffs (updated)
-

  ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml 
PRE-CREATION 
  ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_media_restrict.xml 
6458 
  ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_restrict.xml 
6458 
  
./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml 
6458 
  ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_A_no_direction.xml 
PRE-CREATION 
  ./asterisk/trunk/tests/channels/SIP/sip_hold/run-test 6458 

Diff: https://reviewboard.asterisk.org/r/4442/diff/


Testing
---


Thanks,

Ashley Sanders

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4442: chan_sip: Asterisk fails to re-activate an inactive media session when an offer does not contain a=sendrecv

2015-02-24 Thread Ashley Sanders


 On Feb. 24, 2015, 2:29 a.m., wdoekes wrote:
  I don't see the *_no_direction.xml files.

Sorry about that. The files are included in the update to this review. :)


- Ashley


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4442/#review14522
---


On Feb. 24, 2015, 12:47 p.m., Ashley Sanders wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4442/
 ---
 
 (Updated Feb. 24, 2015, 12:47 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24824
 https://issues.asterisk.org/jira/browse/ASTERISK-24824
 
 
 Repository: testsuite
 
 
 Description
 ---
 
 This test is to ensure that Asterisk correctly applies the direction of the 
 media stream when a=sendonly|recvonly|inactive|sendrecv is missing from the 
 offer's SDP. The expected behavior is for Asterisk to apply sendrecv as the 
 direction of the media stream when no direction attribute is present in an 
 offer's SDP. According to RFC 4566 (Section 6. SDP Attributes): If none of 
 the attributes sendonly, recvonly, inactive, and sendrecv is present, 
 sendrecv SHOULD be assumed as the default for sessions that are not of the 
 conference type broadcast or H332 [...]
 
 The test scenario:
 
 1. From Phone A, send an offer to Phone B to establish a call
 2. From Phone B, send an offer to Phone A to put the call on hold. 
 3. Observe that the MOH start event occurs.
 4. From Phone B, send an offer to Phone A to 'un-hold' the call (ensure that 
 the direction attribute from the offer's SDP is omitted)
 5. Observe that the MOH stop event occurs.
 
 Presently, this test fails for certain versions of Asterisk. From what I can 
 tell, it is present from (at least) 1.8.21 up to the 11 branch.
 
 ***Note*** This is the test. It is only the test. The update to the Asterisk 
 source is coming soon to a review board near you (well, this review board).
 
 
 Diffs
 -
 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml 
 PRE-CREATION 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_media_restrict.xml 
 6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_restrict.xml 
 6458 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml
  6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_A_no_direction.xml 
 PRE-CREATION 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/run-test 6458 
 
 Diff: https://reviewboard.asterisk.org/r/4442/diff/
 
 
 Testing
 ---
 
 
 Thanks,
 
 Ashley Sanders
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] AstriDevCon Follow Up - Asterisk and Kamailio - smoother integration

2015-02-24 Thread Matthew Jordan
On Mon, Feb 23, 2015 at 2:07 PM, Olle E. Johansson o...@edvina.net wrote:


 On 23 Feb 2015, at 20:10, Matthew Jordan mjor...@digium.com wrote:



 On Mon, Feb 23, 2015 at 11:16 AM, James Cloos cl...@jhcloos.com wrote:

  MJ == Matthew Jordan mjor...@digium.com writes:

 MJ What I'm trying to reason out is: given a set of routing constraints -
 MJ which includes not only load balancing but also application level
 routing
 MJ decisions - what's the appropriate place for that information to live?
 MJ Particularly when you want your entire system - not just Asterisk -
 to be
 MJ scalable?

 You need to use something to keep track of whether each box is reachable
 and what each is doing.  There a lots of ways of doing that, including
 custom network applications, shared networkable databases, shared nfs,
 et alia.

 Then each node needs a bit of logic to use that data to determine what
 to do with any given event.

 As one example, if a sip server gets an invite which directs on to an
 existing conference, it needs to know which asterisk is handling that
 conference, so that it can send the invite there.

 A shared database is required, but whether it is a custom application, a
 networkable db or a local db stored on a networked file systems is
 something anyone writing the code needs to choose.


 Completely agree.

 What I'm driving towards - albeit in something of a roundabout fashion -
 are two notions:
 (1) Hard coding logic in application configuration does not lend itself
 well to scalability. Kamailio lessens the pain in certain ways - you're
 typically going to have fewer proxies than application servers (although, I
 suppose that depends on what you are doing). Also, as Olle pointed out, you
 can replicate information out using an htable. Or use a database. To some
 extent though, this is not much different than using func_odbc with
 Asterisk (a concept many people miss often.) At the same time, requiring
 direct access to a database from my routing engine/media application server
 does not lend itself well to expressive logic. While I've managed to push
 the data out of the application, I haven't necessarily done the same with
 the business rules.

 If you approach the problem purely from a how horizontally scalable can I
 make this, then ideally most of your business logic would lie outside of
 the routing engine (Kamailio) or the media application server (Asterisk).
 That may mean a web microservice architecture that exposes REST APIs for
 the real-time component to consume. That may mean something else. As Daniel
 noted, the more REST APIs you hit using a cURL module (or what have you),
 the slower things get in Kamailio. The same is true for Asterisk. What I'm
 trying to fish for is where that dividing line should occur - that is, what
 properly belongs to Kamailio (routing decisions) and what properly belongs
 to something else.

 (2) Domain specific languages require domain specific knowledge. This is
 not necessarily a bad thing. At the same time, it's far easier to
 parallelize the problem of application development if you can split tasks
 into well defined domains that make use of tools that have a wider base of
 knowledge. If, for example, the logic of who is in a conference on which
 server can be answered by a REST API written in Python, or JavaScript, or
 something else - and does not even live on the Kamailio server - then not
 only does the job of the Kamailio integrator become easier, it is also
 becomes easier to find multiple people to help write the services that it
 integrates with.


 Kamailio really doesn't need to know as long as Asterisk knows... You are
 trying to solve something that is not really a problem, Matt. I have tried
 this path before with conferences and ended up with something too complex.
 Went back to
 forking, if a server responded with 200 OK I added a temporary state in an
 autoexpire hashtable so I remembered for next call which did not need to
 fork. Simple. Fast. No distributed states.

 The real key to scalability is keeping it simple and keeping states local.
 As soon as you start trying to synch or distribute states it gets very
 complex and you loose a lot of scalability. Asterisk is filled with all
 kinds of states, keep it there as much as possible and be smart with your
 signalling. You want to be able to restart Kamailio anytime without loosing
 states and without disrupting any single call. As soon as you start adding
 call states, server states and conference server states you loose a lot of
 that and end up with replication in databases and other complex schemes.


Really, distributing the state in Asterisk is not much of a problem in this
scenario. Sure, if the application in question is ConfBridge, or Queue, or
some other dialplan application, then the difficulty of sharing that state
across clustered Asterisk instances is non-trivial. However, in a system
where the application state lives off of the Asterisk boxes - that is,
where ARI is 

Re: [asterisk-dev] [Code Review] 4441: Enable TLS Dual-Certificates (ECC+RSA)

2015-02-24 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4441/#review14529
---


See coding guidelines: 
https://wiki.asterisk.org/wiki/display/AST/Coding+Guidelines


trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25080

Please put a blank line between variable declarations and code.

ast_strdup() allocates memory from the heap and that allocation can fail.  
There is no NULL pointer check for allocation failure.  If you use 
ast_strdupa() instead you will allocate from the stack and not have to worry 
about allocation failure or having to free the memory.

CamelCase is not used per Asterisk coding guidelines.  The names should be 
ecc_file and ecc_file_len.



trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25085

It doesn't look like there is a standard cert file naming convention to 
name the files example_rsa.pem, example_ecc.pem, and example_dsa.pem.  The 
patch assumes this naming convention.  The patch should verify that 
cfg-certfile name is in this format before trying.  i.e. Check that 
cfg-certfile ends with _rsa.pem.

This should be documented in the sample config files (pjsip.conf.sample and 
sip.conf.sample at least).  For pjsip the online documentation should be 
updated in res_pjsip.c.



trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25084

Probably should check if the file exists first before attempting to load it 
as a cert file.  That way if it doesn't exist the error loading the cert file 
message won't happen unless it actually exists.

The same should be done for the dsa cert file.



trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25082

This should be:
ast_log(LOG_ERROR, TLS/SSL error...




trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25081

Guidelines: Declaring variables in the middle of a block is not allowed.

Same here for ast_strdup() allocation failure check.

It seems like a waste to allocate the eccFile then free it then allocate 
the dsaFile then free it.  Why not allocate the duplicate file once and modify 
it for each cert file attempt.



trunk/main/tcptls.c
https://reviewboard.asterisk.org/r/4441/#comment25083

This should be:
ast_log(LOG_ERROR, TLS/SSL error...



- rmudgett


On Feb. 23, 2015, 10:10 a.m., Alexander Traud wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4441/
 ---
 
 (Updated Feb. 23, 2015, 10:10 a.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24815
 https://issues.asterisk.org/jira/browse/ASTERISK-24815
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 Already works for Asterisk as the client. Enables dual- (or triple-) 
 certificates for Asterisk as the TLS server. When a client connects via 
 SSL/TLS, the server uses a RSA key-pair usually. However, more such 
 algorithms exist like DSA and ECDSA. If you go for one of those, you would 
 loose compatibility to RSA-only clients. This patch allows you to provide 
 up-to one RSA, ECDSA and DSA key each (= one key or two keys or three keys). 
 Copied over from the Apache HTTP server project, added in version 2.4.8.
 
 Usage:
 tlscertfile=/etc/asterisk/example_rsa.pem
 Then, the code of this patch picks that path, filename, and searches for 
 files called example_ecc.pem and example_dsa.pem automatically.
 
 
 Diffs
 -
 
   trunk/main/tcptls.c 431938 
 
 Diff: https://reviewboard.asterisk.org/r/4441/diff/
 
 
 Testing
 ---
 
 by developer, manually
 
 This patch was tested in Ubuntu 14.04 LTS with a certificate from Comodo 
 (ECC; chains-up to AddTrust and UTN) and RapidSSL (RSA; chains-up to GeoTrust 
 and Equifax). TLS clients were CounterPath Bria (BlackBerry) and CSipSimple 
 (Android). The test was done with OpenSSL 1.0.1 and OpenSSL 1.0.2. Both 
 versions work as expected. However, if you use well-known (commercial) 
 certificates, you might use different certificate chains. For this, you need 
 at least OpenSSL 1.0.2. If you use your own certificate authority without a 
 certificate chain, OpenSSL 1.0.1 is sufficient.
 
 Because no new symbol of OpenSSL was used, I do not see a reason why this 
 patch should not be compatible with older OpenSSL releases. Therefore, no 
 if/def/version is introduced in this patch.
 
 
 Thanks,
 
 Alexander Traud
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4429: bridge_softmix: G.729 codec license held

2015-02-24 Thread Kevin Harwell

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4429/
---

(Updated Feb. 24, 2015, 12:23 p.m.)


Status
--

This change has been marked as submitted.


Review request for Asterisk Developers.


Changes
---

Committed in revision 432174


Bugs: ASTERISK-24797
https://issues.asterisk.org/jira/browse/ASTERISK-24797


Repository: Asterisk


Description
---

When more than one call using the same codec type enters into a softmix bridge 
and no audio is present for a channel the bridge optimizes the out frame by 
using the same one for all channels with the same codec type. Unfortunately, 
when that number (channels with same codec type) dropped to = 1 the codec was 
not dereferenced. At least not until all parties left the bridge. Thus in the 
case of G.729 the license was not released. This patch ensures that the codec 
is dereferenced immediately when the optimization no longer applies.


Diffs
-

  branches/11/bridges/bridge_softmix.c 431876 

Diff: https://reviewboard.asterisk.org/r/4429/diff/


Testing
---

Created a 3 party confbridge. Two channels were using g.729 and the other using 
ulaw. Hung up both the channels using g.729 and noted that the confbridge was 
still holding a reference to a g.729 license. After applying the patch noted 
that it no longer held onto the license.


Thanks,

Kevin Harwell

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4442: chan_sip: Asterisk fails to re-activate an inactive media session when an offer does not contain a=sendrecv

2015-02-24 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4442/#review14531
---

Ship it!


The only findings I have are very minor ones that don't actually impact test 
performance or success. I figure these can be corrected when committing the 
changes.


./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml
https://reviewboard.asterisk.org/r/4442/#comment25086

I suggest removing these three headers. Session timers aren't a requirement 
for this test, AFAICT.



./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml
https://reviewboard.asterisk.org/r/4442/#comment25087

For the same reason as before, I suggest removing these headers.



./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml
https://reviewboard.asterisk.org/r/4442/#comment25089

I suggest removing these headers.



./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml
https://reviewboard.asterisk.org/r/4442/#comment25088

Pedantic nitpick: The origin and session lines in previous SDPs being sent 
from this script had LiveOps for the session name and LiveOps for the 
origin username.

Asterisk currently apparently doesn't actually care about this change, but 
it's not a good thing to do mid-session.


- Mark Michelson


On Feb. 24, 2015, 6:47 p.m., Ashley Sanders wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4442/
 ---
 
 (Updated Feb. 24, 2015, 6:47 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24824
 https://issues.asterisk.org/jira/browse/ASTERISK-24824
 
 
 Repository: testsuite
 
 
 Description
 ---
 
 This test is to ensure that Asterisk correctly applies the direction of the 
 media stream when a=sendonly|recvonly|inactive|sendrecv is missing from the 
 offer's SDP. The expected behavior is for Asterisk to apply sendrecv as the 
 direction of the media stream when no direction attribute is present in an 
 offer's SDP. According to RFC 4566 (Section 6. SDP Attributes): If none of 
 the attributes sendonly, recvonly, inactive, and sendrecv is present, 
 sendrecv SHOULD be assumed as the default for sessions that are not of the 
 conference type broadcast or H332 [...]
 
 The test scenario:
 
 1. From Phone A, send an offer to Phone B to establish a call
 2. From Phone B, send an offer to Phone A to put the call on hold. 
 3. Observe that the MOH start event occurs.
 4. From Phone B, send an offer to Phone A to 'un-hold' the call (ensure that 
 the direction attribute from the offer's SDP is omitted)
 5. Observe that the MOH stop event occurs.
 
 Presently, this test fails for certain versions of Asterisk. From what I can 
 tell, it is present from (at least) 1.8.21 up to the 11 branch.
 
 ***Note*** This is the test. It is only the test. The update to the Asterisk 
 source is coming soon to a review board near you (well, this review board).
 
 
 Diffs
 -
 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_no_direction.xml 
 PRE-CREATION 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_media_restrict.xml 
 6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_restrict.xml 
 6458 
   
 ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_B_IP_media_restrict.xml
  6458 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/sipp/phone_A_no_direction.xml 
 PRE-CREATION 
   ./asterisk/trunk/tests/channels/SIP/sip_hold/run-test 6458 
 
 Diff: https://reviewboard.asterisk.org/r/4442/diff/
 
 
 Testing
 ---
 
 
 Thanks,
 
 Ashley Sanders
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4446: How to do the valgrind test of module?

2015-02-24 Thread Matt Jordan

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4446/#review14543
---


No, this is not an appropriate place to ask questions. Review Board is for peer 
review of code that is being submitted back to the Asterisk project. It is not 
used for review of code outside of the project, nor is it a place to ask 
general development questions.

If you have questions regarding Asterisk development, please use the project 
mailing lists. In particular, for development related questions, use the 
asterisk-dev list: http://lists.digium.com/mailman/listinfo/asterisk-dev

Additionally, there is a lot of information available on common Asterisk 
development topics on the Asterisk wiki, including on how to run Asterisk under 
valgrind. See https://wiki.asterisk.org/wiki/display/AST/Development and, more 
specifically, https://wiki.asterisk.org/wiki/display/AST/Valgrind .

As this is not a code review, I'm going to close this out. Please ask any 
further questions in the appropriate locations.

- Matt Jordan


On Feb. 24, 2015, 6:07 p.m., sungtae kim wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4446/
 ---
 
 (Updated Feb. 24, 2015, 6:07 p.m.)
 
 
 Review request for Asterisk Developers and Joshua Colp.
 
 
 Repository: Asterisk-addons
 
 
 Description
 ---
 
 Hello,
 
 I don't know this place is right place for asking about this.
 If not, sorry, just let me know. I will ask to another place.
 
 I just release asterisk-zmq module.(https://github.com/pchero/asterisk-zmq)
 
 May I know how to run the valgrind with this module?
 And also, may I know how to release with asterisk distribution?
 
 Again, if I make you annoyed, I'm sorry..
 
 Regards,
 Sungtae.
 
 
 Diffs
 -
 
 
 Diff: https://reviewboard.asterisk.org/r/4446/diff/
 
 
 Testing
 ---
 
 
 Thanks,
 
 sungtae kim
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4431: Increase WebSocket frame size and improve large read handling

2015-02-24 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4431/#review14532
---

Ship it!


Ship It!

- Mark Michelson


On Feb. 20, 2015, 3:39 p.m., David Lee wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4431/
 ---
 
 (Updated Feb. 20, 2015, 3:39 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 Some WebSocket applications, like [chan_respoke][], require a larger
 frame size than the default 8k; this patch bumps the default to 16k.
 This patch also fixes some problems exacerbated by large frames.
 
 The sanity counter was decremented on every fread attempt in
 ws_safe_read(), regardless of whether data was read from the socket or
 not. For large frames, this could result in loss of sanity prior to
 reading the entire frame. (16k frame / 1448 bytes per segment = 12
 segments).
 
 This patch changes the sanity counter so that it only decrements when
 fread() doesn't read any bytes. This more closely matches the original
 intention of ws_safe_read(), given that the error message is
 Websocket seems unresponsive.
 
 This patch also properly logs EOF conditions, so disconnects are no
 longer confused with unresponsive connections.
 
  [chan_respoke]: https://github.com/respoke/chan_respoke
 
 
 Diffs
 -
 
   /branches/11/res/res_http_websocket.c 431915 
 
 Diff: https://reviewboard.asterisk.org/r/4431/diff/
 
 
 Testing
 ---
 
 Ran a Node app that continuously send large WebSocket frame to Asterisk.
 
 https://gist.github.com/leedm777/ba6d86468d7646073286
 
 Without the patch, Asterisk fails in less than 10 frames. With the patch, it 
 runs like a boss.
 
 
 Thanks,
 
 David Lee
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4418: SDES-SRTP: Handle SRTP keys negotiated with key lifetime/MKI (oej branch lingon-srtp-key-lifetime-1.8) - Asterisk 13

2015-02-24 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4418/#review14535
---


The 32-bit system overflow problem needs to be addressed on this review.

- Mark Michelson


On Feb. 14, 2015, 3:26 a.m., Matt Jordan wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4418/
 ---
 
 (Updated Feb. 14, 2015, 3:26 a.m.)
 
 
 Review request for Asterisk Developers and Olle E Johansson.
 
 
 Bugs: ASTERISK-17721, ASTERISK-17899 and ASTERISK-22748
 https://issues.asterisk.org/jira/browse/ASTERISK-17721
 https://issues.asterisk.org/jira/browse/ASTERISK-17899
 https://issues.asterisk.org/jira/browse/ASTERISK-22748
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 Note that this patch is a forward port of oej's lingon-srtp-key-lifetime-1.8 
 branch, with a few small modifications to reduce block indentation and a few 
 improvements made to surrounding existing code.
 
 This patch is for Asterisk 13, and is essentially identical to 
 https://reviewboard.asterisk.org/r/4419 - save for a few small modifications 
 for the public API written when the code was ported into the core. As such, 
 this patch should only be reviewed for those changes that are not in r4419.
 
 
 Diffs
 -
 
   /branches/13/main/sdp_srtp.c 431750 
 
 Diff: https://reviewboard.asterisk.org/r/4418/diff/
 
 
 Testing
 ---
 
 Tests were added for chan_sip and updated for chan_pjsip - see 
 https://reviewboard.asterisk.org/r/4420 . This includes both nominal and 
 off-nominal offers negotiating SDES-SRTP.
 
 
 Thanks,
 
 Matt Jordan
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4437: dns: Define a core DNS API with examples.

2015-02-24 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4437/#review14539
---


First off, good page! It's pretty easy to follow the expected flow for DNS 
queries based on the API you've provided. From a low-level, there isn't much 
that's missing: you have ways of performing synchronous and asynchronous DNS 
lookups, and you have methods for examining the results. I have a couple of 
critiques of the presented API:

* ast_dns_resolve_async_recurring() is not very well defined and there are no 
examples illustrating its use.
* The function ast_dns_query_set_get() creates a leaky abstraction for the 
query set. I suggest one of the following:
* Have ast_dns_query_set_add() return an integer token that can be used 
to retrieve that record from the query set. (enthusiasm level: meh)
* Have an ast_dns_query_set iterator API to iterate over the queries in the 
set. (enthusiasm level: YES)
* While there are ways of querying if a result is secure, there is no current 
way of requesting only secure results.

From a low-level, the one big thing that I feel is not talked about is the 
threading model. I know that's getting really low level, but there are some 
questions that came to mind, such as: if I perform multiple asynchronous DNS 
lookups (without using a query set) can I guarantee the results will be 
presented to me serially, or can the results be presented in separate threads 
at the same time? This can have an impact on how I write my async callbacks, 
especially if I pass a reference to the same user data to both async queries.

The low-level API looks fine, and it provides a lot of areas where some 
higher-level functions could be created. For instance:
* NAPTR has a bunch of interesting possibilities:
* Have a function to automatically perform the regex replacement and 
present the result to you as a string.
* Or if you want to be even lazier, have a NAPTR function that will take a 
NAPTR result and convert that into an ast_dns_query that you can then resolve 
yourself.
* Or if you want to be even lazier, have an async NAPTR function not return 
results until it boils down to an A or  record.
* NAPTR and SRV have the potential for functions that allow for you to iterate 
over the different priority records that are returned.
* NAPTR and SRV could have fallback functions built into them, too.

As far as the examples are concerned, they're good, but I feel like an example 
that uses NAPTR (which subsequently results in an SRV lookup) could be useful. 
You may find that when you write the example, manual construction of further 
queries based on the data that you are retrieving from NAPTR records leads you 
to want to implement some of the suggested high-level functions for it.

Regarding your question about DNS being core or module-based, it kind of 
depends on a few factors:
* What code in Asterisk is going to be updated to use the new DNS API? If older 
code is not going to be updated to use the new DNS API, then I think that 
resolvers should live in loadable modules. If someone upgrades to Asterisk 15 
and plans to continue using chan_sip and hasn't had issues with DNS, then they 
probably aren't going to be too thrilled about having to download c-ares or 
libunbound, only to not actually use it for anything. If old code is going to 
be updated to use the new DNS API, then...
* Are we planning on keeping any of the old DNS code from Asterisk around as a 
resolver implementation choice? If so, then again, I suggest having resolvers 
be separate modules. This way we still provide an upgrade path that does not 
have new dependencies or new underlying implementations.

My personal opinion is that all old code should be updated to use the new DNS 
API (without actually changing behavior, even if the old behavior is incorrect) 
and that the old implementation should be thrown away. If we go that route, 
then resolvers should be part of the core since DNS resolution is a fundamental 
thing in most Asterisk installations.

There is one further thing I can think of here, and that is the current dnsmgr 
code in Asterisk. Is that simply going to be updated to use the new DNS API, or 
is dnsmgr going to get some sort of overhaul to provide new functionality that 
the underlying DNS API makes it capable of?

- Mark Michelson


On Feb. 23, 2015, 12:25 a.m., Joshua Colp wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4437/
 ---
 
 (Updated Feb. 23, 2015, 12:25 a.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 A wiki page is present at:
 
 https://wiki.asterisk.org/wiki/display/~jcolp/Asterisk+DNS+API
 
 Which 

[asterisk-dev] [Code Review] 4447: ARI: Fix crash if integer values used in JSON payload 'variables' object.

2015-02-24 Thread rmudgett

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4447/
---

Review request for Asterisk Developers.


Bugs: ASTERISK-24751
https://issues.asterisk.org/jira/browse/ASTERISK-24751


Repository: Asterisk


Description
---

Sending the following ARI commands caused Asterisk to crash if the JSON
body 'variables' object passes values of types other than strings.

POST /ari/channels
POST /ari/channels/{channelid}
PUT /ari/endpoints/sendMessage
PUT /ari/endpoints/{tech}/{resource}/sendMessage

* Eliminated RAII_VAR usage in ast_ari_channels_originate_with_id(),
ast_ari_channels_originate(), ast_ari_endpoints_send_message(), and
ast_ari_endpoints_send_message_to_endpoint().


Diffs
-

  /branches/13/rest-api/api-docs/endpoints.json 432194 
  /branches/13/res/res_ari_endpoints.c 432194 
  /branches/13/res/ari/resource_endpoints.c 432194 
  /branches/13/res/ari/resource_channels.c 432194 
  /branches/13/main/json.c 432194 
  /branches/13/include/asterisk/json.h 432194 

Diff: https://reviewboard.asterisk.org/r/4447/diff/


Testing
---

The four commands no longer crash and now report 400 Bad Request with a
message that the 'variables' object only accepts string values when I
pass an integer value.


Thanks,

rmudgett

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4444: chan_dahdi/sig_analog: Fix distinctive ring detection to suck less.

2015-02-24 Thread Scott Griepentrog

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r//#review14533
---


Tested with a looped tdm board generating various DR patterns and confirmed to 
resolve CID detection problem.  Ran out of time to validate DR detection, will 
attempt later.

- Scott Griepentrog


On Feb. 23, 2015, 6:51 p.m., rmudgett wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r//
 ---
 
 (Updated Feb. 23, 2015, 6:51 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24825
 https://issues.asterisk.org/jira/browse/ASTERISK-24825
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 The distinctive ring feature interferes with detecting Caller ID and
 appears to have been broken for years.  What happens is if you have a
 ring-ring cadence as used in the UK you get too many DAHDI events for the
 distinctive ring pattern array and Caller ID detection is aborted.  I
 think when Zapata/DAHDI added the ring begin event it broke distinctive
 ring.  More events happen than before and the code does no filtering of
 which event times are recorded in the pattern array.
 
 * Made distinctive ring only record the ringt count when the ring ends
 instead of on just any DAHDI event.  Distinctive ring can be ring,
 ring-ring, ring-ring-ring, or different ring durations for the up to three
 rings.
 
 * Fixed the distinctive ring detection enable (chan_dahdi.conf option
 usedistinctiveringdetection) to be per port instead of somewhat per port
 and somewhat global.  This has been broken since v1.8.
 
 * Fixed using the default distinctive ring context when the detected
 pattern does not match any configured dringX patterns.  The default
 context did not get set when the previous call was a matched distinctive
 ring pattern and the current call is not matched.  This has been broken
 since v1.8.
 
 * Made distinctive ring have no effect on Caller ID detection when it is
 disabled.  Caller ID detection just monitors for 10 seconds before giving
 up.
 
 * Fixed leak of struct callerid_state memory when a polarity reversal
 during Caller ID detection causes the incoming call to be aborted.
 
 
 Diffs
 -
 
   /branches/11/channels/sig_analog.c 432173 
   /branches/11/channels/sig_analog.h 432173 
   /branches/11/channels/chan_dahdi.c 432173 
   /branches/11/UPGRADE.txt 432173 
 
 Diff: https://reviewboard.asterisk.org/r//diff/
 
 
 Testing
 ---
 
 Tested the following scenarios for US (ring) and UK (ring-ring) ring cadences:
 1) usedistinctiveringdetection=no
 2) usedistinctiveringdetection=yes with distinctiveringaftercid=no
 3) usedistinctiveringdetection=yes with distinctiveringaftercid=yes
 
 * Caller-ID was detected for each call
 * The configured distinctive ring dringX pattern was detected and the 
 specified context set.
 
 
 Thanks,
 
 rmudgett
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4434: ARI/PJSIP: Apply requesting channel's capabilities to originated channels in ARI; clean up a bit of PJSIP's usage of format capabalities

2015-02-24 Thread Matt Jordan

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4434/
---

(Updated Feb. 24, 2015, 3:58 p.m.)


Status
--

This change has been marked as submitted.


Review request for Asterisk Developers.


Changes
---

Committed in revision 432195


Bugs: ASTERISK-24812
https://issues.asterisk.org/jira/browse/ASTERISK-24812


Repository: Asterisk


Description
---

This patch addresses the following problems:
* ari/resource_channels: In ARI, we currently create a format capability 
structure of SLIN and apply it to the new channel being created. This was 
originally done when the PBX core was used to create the channel, as there was 
a condition where a newly created channel could be created without any formats. 
Unfortunately, now that the Dial API is being used, this has two drawbacks:
  (a) SLIN, while it will ensure audio will flows, can cause a lot of needless 
transcodings to occur, particularly when a Local channel is created to the 
dialplan. When no format capabilities are available, the Dial API handles this 
better by handing all audio formats to the requsted channels. As such, we defer 
to that API to provide the format capabilities.
  (b) If a channel (requester) is causing this channel to be created, we 
currently don't use its format capabilities as we are passing in our own. 
However, the Dial API will use the requester channel's formats if none are 
passed into it, and the requester channel exists and has format capabilities. 
This is the best scenario, as it is the most likely to create a media path 
that minimizes transcoding.
  Fixing this simply entails removing the providing of the format capabilities 
structure to the Dial API.

* chan_pjsip: Rather than blindly picking the first format in the format 
capability structure - which actually *can* be a video or text format - we 
select an audio format, and only pick the first format if that fails. That 
minimizes the weird scenario where we attempt to transcode between video/audio.

* channel: Fixed a comment. The reason we have to minimize our requested format 
capabilities down to a single format is due to Asterisk's inability to convey 
the format to be used back up a channel chain. Consider the following:

PJSIP/A = L;1 = L;2 = PJSIP/B
g,u,a g,u,ag,u,a  u

That is, we have PJSIP/A dialing a Local channel, where the Local;2 dials 
PJSIP/B. PJSIP/A has native format capabilities g722,ulaw,alaw; the Local 
channel has inherited those format capabilities down the line; PJSIP/B supports 
only ulaw. According to these format capabilities, ulaw is acceptable and 
should be selected across all the channels, and no transcoding should occur. 
However, there is no way to convey this: when L;2 and PJSIP/B are put into a 
bridge, we will select ulaw, but that is not conveyed to PJSIP/A and L;1. Thus, 
we end up with:

PJSIP/A = L;1 = L;2 = PJSIP/B
  g  g   X   uu

Which causes g722 to be written to PJSIP/B.

Even if we can convey the 'ulaw' choice back up the chain (which through some 
severe hacking in Local channels was accomplished), such that the chain looks 
like:

PJSIP/A = L;1 = L;2 = PJSIP/B
  u  u   u u

We have no way to tell PJSIP/A's *channel driver* to Answer in the SDP back 
with only 'ulaw'. This results in all the channel structures being set up 
correctly, but PJSIP/A *still* sending g722 and causing the chain to fall apart.

There's a lot of difficulty just in setting this up, as there are numerous race 
conditions in the act of bridging, and no clean mechanism to pass the selected 
format backwards down an established channel chain. As such, I punted on 
improving this and simply updated the comment.

* res_pjsip_sdp_rtp: Applied the joint capapbilites to the format structure. 
Since ast_request already limits us down to one format capability once the 
format capabilities are passed along, there's no reason to squelch it here. The 
comment about bridge_softmix is a purely theoretical concern that should not 
limit what the PJSIP stack does.


Diffs
-

  /branches/13/res/res_pjsip_sdp_rtp.c 431991 
  /branches/13/res/ari/resource_channels.c 431991 
  /branches/13/main/channel.c 431991 
  /branches/13/channels/chan_pjsip.c 431991 

Diff: https://reviewboard.asterisk.org/r/4434/diff/


Testing
---

The PJSIP SDP Offer/Answer tests all pass. Prior to this patch, we could set up 
to 8 transcoding paths on a channel chain created by ARI; now, we have none (if 
both far ends support the same formats).


Thanks,

Matt Jordan

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4419: SDES-SRTP: Handle SRTP keys negotiated with key lifetime/MKI (oej branch lingon-srtp-key-lifetime-1.8) - Asterisk 11

2015-02-24 Thread Mark Michelson

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4419/#review14534
---

Ship it!


Ship It!

- Mark Michelson


On Feb. 20, 2015, 2:41 a.m., Matt Jordan wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4419/
 ---
 
 (Updated Feb. 20, 2015, 2:41 a.m.)
 
 
 Review request for Asterisk Developers and Olle E Johansson.
 
 
 Bugs: ASTERISK-17721, ASTERISK-17899 and ASTERISK-22748
 https://issues.asterisk.org/jira/browse/ASTERISK-17721
 https://issues.asterisk.org/jira/browse/ASTERISK-17899
 https://issues.asterisk.org/jira/browse/ASTERISK-22748
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 Note that this patch is a forward port of oej's lingon-srtp-key-lifetime-1.8 
 branch, with a few small modifications to reduce block indentation and a few 
 improvements made to surrounding existing code.
 
 To quote Olle from ASTERISK-17721:
 
 {quote}
 The Lingon branch now handle lifetime and MKI parameters.
 
 We only accept lifetimes up to max for the crypto and higher than 10 hours 
 for packetization of 20 ms (50 pps).
 
 We only handle MKI with index 1.
 
 We do not really bother with counting packets and reinviting at end of 
 lifetime, so the min of 10 hours kind of takes care of most calls. If there 
 are longer ones, we rely on the other side for re-invites.
 
 It's still not perfect, but I personally think this is an improvement. A 
 configuration option for minimum lifetime accepted could be added.
 {quote}
 
 I personally don't think the minimum lifetime option is needed, as in 
 practice, every instance of an SDP offer for SDES-SRTP with lifetime I've 
 seen offers a lifetime of 2^32 - but it could be added in the future if 
 necessary.
 
 Note that since the sdp_crypto code was moved to the core in 12+, a separate 
 review (r4418) has been made for the Asterisk 13 variant. It is essentially 
 identical to this review.
 
 
 Diffs
 -
 
   /branches/11/channels/sip/sdp_crypto.c 432011 
 
 Diff: https://reviewboard.asterisk.org/r/4419/diff/
 
 
 Testing
 ---
 
 Tests were added for chan_sip and updated for chan_pjsip - see 
 https://reviewboard.asterisk.org/r/4420 . This includes both nominal and 
 off-nominal offers negotiating SDES-SRTP.
 
 
 Thanks,
 
 Matt Jordan
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4418: SDES-SRTP: Handle SRTP keys negotiated with key lifetime/MKI (oej branch lingon-srtp-key-lifetime-1.8) - Asterisk 13

2015-02-24 Thread Matt Jordan


 On Feb. 24, 2015, 4:29 p.m., Mark Michelson wrote:
  The 32-bit system overflow problem needs to be addressed on this review.

I'll catch it when I do the merge over.


- Matt


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4418/#review14535
---


On Feb. 13, 2015, 9:26 p.m., Matt Jordan wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r/4418/
 ---
 
 (Updated Feb. 13, 2015, 9:26 p.m.)
 
 
 Review request for Asterisk Developers and Olle E Johansson.
 
 
 Bugs: ASTERISK-17721, ASTERISK-17899 and ASTERISK-22748
 https://issues.asterisk.org/jira/browse/ASTERISK-17721
 https://issues.asterisk.org/jira/browse/ASTERISK-17899
 https://issues.asterisk.org/jira/browse/ASTERISK-22748
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 Note that this patch is a forward port of oej's lingon-srtp-key-lifetime-1.8 
 branch, with a few small modifications to reduce block indentation and a few 
 improvements made to surrounding existing code.
 
 This patch is for Asterisk 13, and is essentially identical to 
 https://reviewboard.asterisk.org/r/4419 - save for a few small modifications 
 for the public API written when the code was ported into the core. As such, 
 this patch should only be reviewed for those changes that are not in r4419.
 
 
 Diffs
 -
 
   /branches/13/main/sdp_srtp.c 431750 
 
 Diff: https://reviewboard.asterisk.org/r/4418/diff/
 
 
 Testing
 ---
 
 Tests were added for chan_sip and updated for chan_pjsip - see 
 https://reviewboard.asterisk.org/r/4420 . This includes both nominal and 
 off-nominal offers negotiating SDES-SRTP.
 
 
 Thanks,
 
 Matt Jordan
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

[asterisk-dev] [Code Review] 4446: How to do the valgrind test of module?

2015-02-24 Thread sungtae kim

---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4446/
---

Review request for Asterisk Developers and Joshua Colp.


Summary (updated)
-

How to do the valgrind test of module?


Repository: Asterisk-addons


Description (updated)
---

Hello,

I don't know this place is right place for asking about this.
If not, sorry, just let me know. I will ask to another place.

I just release asterisk-zmq module.(https://github.com/pchero/asterisk-zmq)

May I know how to run the valgrind with this module?
And also, may I know how to release with asterisk distribution?

Again, if I make you annoyed, I'm sorry..

Regards,
Sungtae.


Diffs
-


Diff: https://reviewboard.asterisk.org/r/4446/diff/


Testing
---


Thanks,

sungtae kim

-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Re: [asterisk-dev] [Code Review] 4444: chan_dahdi/sig_analog: Fix distinctive ring detection to suck less.

2015-02-24 Thread Kevin Harwell


 On Feb. 24, 2015, 5:35 p.m., Kevin Harwell wrote:
  /branches/11/channels/chan_dahdi.c, lines 1965-1967
  https://reviewboard.asterisk.org/r//diff/2/?file=71580#file71580line1965
 
  Since you rearranged the 'ring - range' check should it be '' instead 
  of '='? Otherwise it is different than before.
 
 rmudgett wrote:
 It is not different than before.
 Before it was:
 if (x = ring + range  x = ring - range)
 Now it is:
 if (ring - range = x  x = ring + range)
 The code now better expreses that x is between two points on a number 
 line.  A = x = B

ooops yeah I misread it. You are right!


- Kevin


---
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r//#review14538
---


On Feb. 23, 2015, 6:51 p.m., rmudgett wrote:
 
 ---
 This is an automatically generated e-mail. To reply, visit:
 https://reviewboard.asterisk.org/r//
 ---
 
 (Updated Feb. 23, 2015, 6:51 p.m.)
 
 
 Review request for Asterisk Developers.
 
 
 Bugs: ASTERISK-24825
 https://issues.asterisk.org/jira/browse/ASTERISK-24825
 
 
 Repository: Asterisk
 
 
 Description
 ---
 
 The distinctive ring feature interferes with detecting Caller ID and
 appears to have been broken for years.  What happens is if you have a
 ring-ring cadence as used in the UK you get too many DAHDI events for the
 distinctive ring pattern array and Caller ID detection is aborted.  I
 think when Zapata/DAHDI added the ring begin event it broke distinctive
 ring.  More events happen than before and the code does no filtering of
 which event times are recorded in the pattern array.
 
 * Made distinctive ring only record the ringt count when the ring ends
 instead of on just any DAHDI event.  Distinctive ring can be ring,
 ring-ring, ring-ring-ring, or different ring durations for the up to three
 rings.
 
 * Fixed the distinctive ring detection enable (chan_dahdi.conf option
 usedistinctiveringdetection) to be per port instead of somewhat per port
 and somewhat global.  This has been broken since v1.8.
 
 * Fixed using the default distinctive ring context when the detected
 pattern does not match any configured dringX patterns.  The default
 context did not get set when the previous call was a matched distinctive
 ring pattern and the current call is not matched.  This has been broken
 since v1.8.
 
 * Made distinctive ring have no effect on Caller ID detection when it is
 disabled.  Caller ID detection just monitors for 10 seconds before giving
 up.
 
 * Fixed leak of struct callerid_state memory when a polarity reversal
 during Caller ID detection causes the incoming call to be aborted.
 
 
 Diffs
 -
 
   /branches/11/channels/sig_analog.c 432173 
   /branches/11/channels/sig_analog.h 432173 
   /branches/11/channels/chan_dahdi.c 432173 
   /branches/11/UPGRADE.txt 432173 
 
 Diff: https://reviewboard.asterisk.org/r//diff/
 
 
 Testing
 ---
 
 Tested the following scenarios for US (ring) and UK (ring-ring) ring cadences:
 1) usedistinctiveringdetection=no
 2) usedistinctiveringdetection=yes with distinctiveringaftercid=no
 3) usedistinctiveringdetection=yes with distinctiveringaftercid=yes
 
 * Caller-ID was detected for each call
 * The configured distinctive ring dringX pattern was detected and the 
 specified context set.
 
 
 Thanks,
 
 rmudgett
 


-- 
_
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev