<p>N A <strong>uploaded patch set #2</strong> to this change.</p><p><a href="https://gerrit.asterisk.org/c/asterisk/+/18305">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">callerid: Fix buggy and missing Caller ID parameters<br><br>There are several things wrong with analog Caller ID<br>handling that are fixed by this commit:<br><br>callerid.c's Caller ID generation function contains the<br>logic to use the presentation to properly send the proper<br>Caller ID. However, currently, DAHDI does not pass any<br>presentation information to the Caller ID module, which<br>means that presentation is completely ignored on all calls.<br>This means that lines could be getting Caller ID information<br>they aren't supposed to.<br><br>Part of the reason this has been obscured is because the<br>simple switch logic for handling the built in *67 and *82<br>is completely wrong. Rather than modifying the presentation<br>for the call accordingly (which is what it's supposed to do),<br>it simply blanks out the Caller ID or fills it in. This is<br>wrong, so wrong that it makes a mockery of the specification.<br>Additionally, it would leave to the "UNAVAILABLE" disposition<br>being used for Caller ID generation as opposed to the "PRIVATE"<br>disposition that it should have been using. This is now fixed<br>to only update the presentation and not modify the number and<br>name, so that the simple switch *67/*82 work correctly.<br><br>Next, sig_analog currently only copies over the name and number,<br>nothing else, when it is filling in a duplicated caller id<br>structure. Thus, we also now copy over the presentation<br>information so that is available for the Caller ID spill.<br>Additionally, this meant that "valid" was implicitly 0,<br>and as such presentation would always fail to "Unavailable".<br>The validity is therefore also copied over so it can be used<br>by ast_party_id_presentation.<br><br>As part of this fix, new API is added so that all the relevant<br>Caller ID information can be passed in to the Caller ID generation<br>functions. Parameters that are also completely missing from the<br>Caller ID spill have also been added, to enhance the compatibility,<br>correctness, and completeness of the Asterisk Caller ID implementation.<br><br>ASTERISK-29991 #close<br><br>Change-Id: Icc44a5e09979916f4c18a440f96e10dc1c76ae15<br>---<br>M channels/chan_dahdi.c<br>M channels/sig_analog.c<br>M include/asterisk/callerid.h<br>M main/callerid.c<br>4 files changed, 156 insertions(+), 17 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://gerrit.asterisk.org:29418/asterisk refs/changes/05/18305/2</pre><p>To view, visit <a href="https://gerrit.asterisk.org/c/asterisk/+/18305">change 18305</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://gerrit.asterisk.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://gerrit.asterisk.org/c/asterisk/+/18305"/><meta itemprop="name" content="View Change"/></div></div>
<div style="display:none"> Gerrit-Project: asterisk </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-Change-Id: Icc44a5e09979916f4c18a440f96e10dc1c76ae15 </div>
<div style="display:none"> Gerrit-Change-Number: 18305 </div>
<div style="display:none"> Gerrit-PatchSet: 2 </div>
<div style="display:none"> Gerrit-Owner: N A <mail@interlinked.x10host.com> </div>
<div style="display:none"> Gerrit-CC: Friendly Automation </div>
<div style="display:none"> Gerrit-MessageType: newpatchset </div>