Reference:Release Notes Firmware: Difference between revisions

From innovaphone wiki
Jump to navigation Jump to search
mNo edit summary
 
(191 intermediate revisions by 5 users not shown)
Line 1: Line 1:
This is the Version 7 firmware roadmap.<br/>
This is the Version 7 firmware Release Notes.<br/>
<br/>
The release date of the next Hotfix is planed for the second monday of a month. Please note that this a scheduled and no fix date.<br/>
<br/>
<br/>


This article is generated automatically. Do not edit!
Please see ''[[Reference:What_are_the_Release_Notes_Documents?|the disclaimer]]'' before using the information presented here!
Please see ''[[Support:What is the DVL-Roadmap?|the disclaimer]]'' before using the information presented here!
 
 
   
= 08/45 V7 Release =
Appart many small improvements the following key features are added to the products with v7<br/><br/>- Security: TLS, SIPS, SRTP, ...<br/>- Bootcode with full IP/HTTP functionality to better recover from a failed firmware update<br/>
[http://mantis.innovaphone.com/view.php?id=15004 Definition]
 
== New Features ==
 
 
   
=== CDR from PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=1304 1304]
|}
The PBX should generate CDRs for calls (internal/external). The CDRs are sent using the normal mechanisms with the CDR0 and CDR1 interface. A new format for these CDRs is used based on XML.
''Status:''
Implemented in the 7.00 software branch. <br/>See http://wiki.innovaphone.com/index.php?title=Reference:Call_Detail_Record_CDR_PBX for description
   
=== MultiLevel Admin Access ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=3624 3624]
|}
On a Box Level multiple admin accounts can be configured. These accounts can be either Administrators (as before) or Viewers (view config, no change).<br/><br/>On the PBX configured PBX users can be given Administrator rights:<br/>- PBX Full Admin.<br/>- PBX Admin all-objects (no General/Password/Filter)<br/>- PBX Admin non-critial objects. Only objects without critical flag<br/>- Call-Forward/Groups only<br/><br/>In Addition the admin can be restricted to a Node<br/>
   
=== SRTP - together with SIP and H.323 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=4280 4280]
|}
works with secure signaling for key exchange
   
=== Handling of certificates ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=14920 14920]
|}
ASN.1 definition, etc.<br/>Needed for TLS
   
=== 802.1x Port Authentication ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=14926 14926]
|}
Research needed how this can work on a phone with a PC connected at the second port
''Status:''
EAP-MD5, as tested with Foundry FastIron 4802
   
=== Bootcode with Full IP/HTTP functionality ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=14934 14934]
|}
- Bootcode with Decompression/Start of Firmware only<br/>- mini Firmware with IP/HTTP only<br/>- both packed into one image that is called bootcode<br/>- bootboot code enhanced to allow reading firmware from not continous flash segments<br/>- the bootboot code usually starts the normal firmware. If this fails the mini firmware, which is part of the bootcode image is started<br/>- on platforms with HW support for alternate bootcode, the bootboot code is stored twice<br/>- a bootcode update is only possible if the real firmware was booted<br/>- a real firmware update is possible only if the mini firmware inside the bootcode is ok<br/>- Bootcode with Decompression/Start of Firmware ( realbootcode ) is stored exclusiv in the first flash segment and is only updated if changed. <br/><br/>
   
=== LDAP/HTTP Directory Access from DECT Handset ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=15436 15436]
|}
A pbx object can be configured to gain access to a ldap directory (or to a http server).<br/>There are two different objects, one for quick dial and one for directory search.<br/><br/>* quick dial (mst): the real number of the target can be found by dialing a short number after dialing the quick dial pbx object.<br/><br/>* ldap/http directory: the combination of all letters of the first three digits of the dialed number after the object number represents the ldap/http filter (e.g. dialing 222 can be AAA,AAB,AAC,ABA,ABC...).<br/>The results can be searched through by 1 and * and the current result can be called by #.<br/><br/>If possible, the last dialed number can be redialed.
   
=== SIPS (SIP over TCP/TLS) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=22336 22336]
|}
needed for secure exchange of SRTP keys.<br/>needed for OCS interoperability
   
=== PBX Slaves can use licenses from Master (floating license) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=26945 26945]
|}
Basic+registrations licenses are installed on master only. Slaves use these licenses.
''Status:''
implemented in v7.<br/><br/>See <br/>http://wiki.innovaphone.com/index.php?title=Reference:Administration/PBX/General<br/>and<br/>http://wiki.innovaphone.com/index.php?title=Reference:Licenses<br/>for description
   
=== innovaphone Messaging ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=26946 26946]
|}
innovaphone V7 Messaging<br/><br/>- based on SIP Messaging RFC 3428 (Session Initiation Protocol (SIP) Extension for Instant Messaging)<br/>- Interoperability with H.323 protocol<br/>- Alerting or inbound-intruding tone upon message receival<br/>- Missed messages counter<br/>- Incoming and outgoing messages displayed in the same list as incoming and outgoing calls (well known R and Redial keys as shortcuts)<br/>- Separate message lists also available<br/>- On busy subscriber, send message shortcut in context menu<br/>- Out of office do-not-disturb mode with out-of-office message being sent to each caller<br/>- special "Messaging Server Interface" mode developed to support Avics messaging syntax (special message content activates Avics mode)<br/>
   
=== Active Directory Replication ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=29001 29001]
|}
Active Directory Replication<br/><br/>Wiki Documents: <br/>Configuration: http://wiki.innovaphone.com/index.php?title=Reference7:Configure_Active_Directory_Replication<br/><br/>Development: http://wiki.innovaphone.com/index.php?title=Development:Active_Directory_Replication
''Status:''
Configuration: http://wiki.innovaphone.com/index.php?title=Reference7:Configure_Active_Directory_Replication
   
=== Upload firmware to DRAM ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=29009 29009]
|}
This allows testing of a new firmware without flashing the firmeware. Its faster and it allows easy recovery from a bad firmware with a simple reset
   
=== Download firmware and bootcode ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=29010 29010]
|}
This allows to archive a firmware or bootcode version from the device.
   
=== Support for Multilocation TAPI in PBX-SOAP-API ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=31655 31655]
|}
- Find other Location URLs<br/>- ...<br/>
   
=== pbx dtmf feature codes object ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=31663 31663]
|}
A new pbx object with dtmf feature codes:<br/><br/>CFU/CFB/CFNR De-/Activate<br/>Pickup Group/Directed<br/>Park/Unpark<br/>Park To/Unpark from<br/>Call Completion/Cancel CC<br/><br/>Each feature code can be freely configured or disabled.<br/>
=== Other new Features ===
 
{|
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=25470 25470]
|valign=top nowrap=true|dde
|caching of dir_entries for better file driver performance
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31624 31624]
|valign=top nowrap=true|dde
|redial for directory search
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14918 14918]
|valign=top nowrap=true|gd
|H.235 key exchange for SRTP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=18708 18708]
|valign=top nowrap=true|gd
|Feature Code support for CLIR
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=19034 19034]
|valign=top nowrap=true|gd
|busy on 1 call is not ideal for operating fixed+wireless phone on one user
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=21420 21420]
|valign=top nowrap=true|gd
|SOAP API: Send DTMF
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=23985 23985]
|valign=top nowrap=true|gd
|should be possible to turn off DTMF detection
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=19967 19967]
|valign=top nowrap=true|jfr
|Use MWI to indicate a pending CCNR
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=23977 23977]
|valign=top nowrap=true|mst
|SNMP Trap for Alarms under Administration/Diagnostics/Alarms
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31583 31583]
|valign=top nowrap=true|tac
|Do CPU reservation for SRTP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=28981 28981]
|valign=top nowrap=true|teh
|Extend pbx dtmf object about joining group
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=26931 26931]
|valign=top nowrap=true|gd
|Framework to edit Phone config on PBX
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31287 31287]
|valign=top nowrap=true|vsi
|Phone Text Translations for Security Release - Italian
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31289 31289]
|valign=top nowrap=true|vsi
|Phone Text Translations for Security Release - Dutch
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31577 31577]
|valign=top nowrap=true|vsi
|phone-ui: functaste activate-reg (toggle flag)
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14913 14913]
|valign=top nowrap=true|cb
|Driver for Hardware AES for SRTP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14915 14915]
|valign=top nowrap=true|cb
|IP6000 Driver for Hardware DES
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14924 14924]
|valign=top nowrap=true|cb
|HTTPS in httpclient
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=28071 28071]
|valign=top nowrap=true|ckl
|force media-relay
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14893 14893]
|valign=top nowrap=true|gd
|SIP fault detection
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=26988 26988]
|valign=top nowrap=true|cb
|Fax with 14.4
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=3753 3753]
|valign=top nowrap=true|ckl
|timed disconnect für PPoE
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=7208 7208]
|valign=top nowrap=true|ckl
|twin calls
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=11376 11376]
|valign=top nowrap=true|ckl
|help url config: drop down "standard / local / specific"
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=10821 10821]
|valign=top nowrap=true|cmu
|Signalisierung für Türsprechstellen am a/b Interface abschaltbar machen
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=8217 8217]
|valign=top nowrap=true|gbe
|Rufannahme per IXI bei Telefon mit Headset ohne Tastendruck am Telefon
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14914 14914]
|valign=top nowrap=true|msc
|Software DES
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=26369 26369]
|valign=top nowrap=true|mst
|vm,xml, &lt;pbx-xfer&gt;  required
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14917 14917]
|valign=top nowrap=true|tac
|SIP key exchange for SRTP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31252 31252]
|valign=top nowrap=true|vsi
|Phone Text Translations for Security Release
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31286 31286]
|valign=top nowrap=true|vsi
|Phone Text Translations for Security Release - Scandic Languages
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=31288 31288]
|valign=top nowrap=true|vsi
|Phone Text Translations for Security Release - French
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=9390 9390]
|valign=top nowrap=true|cb
|httpclient NTLM Authentication
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14907 14907]
|valign=top nowrap=true|gd
|Router error reporting
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14908 14908]
|valign=top nowrap=true|gd
|Router fault state reporting
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=25592 25592]
|valign=top nowrap=true|gd
|DHCP Server: Client Reconfigure Prozedur
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=5984 5984]
|valign=top nowrap=true|jfr
|MS-CHAP V2 support in PPP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14899 14899]
|valign=top nowrap=true|gd
|IP-DECT fault state reporting
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=14900 14900]
|valign=top nowrap=true|gd
|IP-DECT error reporting
|}
 
   
== Bug Fixes ==
 
 
=== Other Bug Fixes ===
 
{|
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=34654 34654]
|valign=top nowrap=true|mst
|HTTPS neither works with Webmedia nor WebDAV
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=27480 27480]
|valign=top nowrap=true|vsi
|IP72: icons in the upper line
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=30890 30890]
|valign=top nowrap=true|vsi
|Messaging Tests
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=15101 15101]
|valign=top nowrap=true|vsi
|IP72: battery state
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=30891 30891]
|valign=top nowrap=true|vsi
|lock (schloss)  in phone-ui on SRTP
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=27219 27219]
|valign=top nowrap=true|vsi
|IP72: bootcode - clear config with a key press combination......
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=15100 15100]
|valign=top nowrap=true|vsi
|IP72: charger mode
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=35499 35499]
|valign=top nowrap=true|dde
|dect fty clir next call does not work
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=29300 29300]
|valign=top nowrap=true|jfr
|HTTP_MAX_REQUEST 8000 aber URI Länge auf 2000 begrenzt, historisch?
|}
 
   
= V7 Hotfix  1 (08-70300.06) =
Changes included in Version 7 Hotfix2
[http://mantis.innovaphone.com/view.php?id=35716 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== IP72: new display driver for LCD NT75451 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=33028 33028]
|}
Problem: newer phones require another lcd driver<br/><br/>Solution: fixed in code<br/><br/>Products affected: IP72<br/><br/>Risk: None
   
=== Trap During TLS Connection Termination ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35603 35603]
|}
Problem: Occasional trap while TLS client connection shuts down.<br/><br/>Solution: Fixing state machine<br/><br/>Products affected: All<br/><br/>Risk: none<br/>
   
=== CFU to Voicemail/Redial ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35634 35634]
|}
problem: If you dial a local user and gets his voicemail by CFU, then if you try to redial the number by pressing the redial bottom, the Voicemail name will appear in the display, but it is the correct local number that is dialed.<br/>We are running an IP6000 SR2 Hotfix 9 with Innovaphone voicemail.<br/><br/>solution: send divertingLegInformation1 to caller<br/><br/>products: All PBX products<br/><br/>risk: none<br/>
   
=== Dect SIP registration to PBX with authentication name ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35680 35680]
|}
Problem: Authentication name of the Dect user is not used for SIP registration if 'Name for Authentication' option is enabled.<br/><br/>Solution: If authentication name is set for the user, it is used for SIP registration independent of the 'Name for Authentication' option.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== SOAP LocationUrl return value coding ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35686 35686]
|}
Problem: the PBX returns the url in a <loc> tag while it should be a <return> tag according to the WSDL.<br/><br/>Solutions: fix coding or change wsdl.<br/>Files affected: pbx/xml/pbx_xml.cpp<br/>Risk: near to zero.  .Net based SOAP clients do not care anyway, stricter implementations have not worked at all before. 
   
=== SIP debug output to be removed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35739 35739]
|}
Problem: Debug outputs forgotten in SIP stack<br/>Solution: Debug outputs removed<br/>Products affected: All<br/>Risk: None
   
=== "Administration/Diagnostics/Events/Save" should be enabled in viewer mode ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35742 35742]
|}
Problem: The "Administration/Diagnostics/Events/Save" link is disabled in Viewer mode while "Administration/Diagnostics/Config Show" and other links creating textfiles with support info are not.<br/><br/>Solution: enable the "Save" link in xsl file<br/><br/>Products affected: All<br/><br/>Risk: None<br/>
   
=== Fix for Session-Expires handling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35749 35749]
|}
Problem: Some SIP endpoints send reINVITE w/o Session-Expires header<br/>on calls established with session refresh. The SIP stack released the call in this case. This prevented interoperation with such SIP equipment<br/><br/>Solution: Restart the timer with the original expires value.<br/><br/>Products affected: All<br/><br/>Risk: Minimal
''Status:''
Fix: Session watchdog timer is restarted with original expires value.
   
=== Debugging Info for MAX_BUSY_TICKS improved ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35752 35752]
|}
Problem: After a trap with MAX_BUSY_TICKS it was not possible to see which event caused the problem<br/><br/>Solution: Debug Information added<br/><br/>Products affected: All<br/><br/>Risk: None, code only executed on a trap
   
=== Display Master Id in users list ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35753 35753]
|}
Problem: Master Id is unknown by the user administrators.<br/><br/>Solution: Display the Master ID in the create/edit users view (Users->Users), because the user administrators must know the Master Id to be able to log in handsets.<br/><br/>Products affected: IP1201, IP4001<br/><br/>Risk: Minimal
   
=== Potential Trap if H.323 Signaling entity deleted when calls active ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35754 35754]
|}
Problem: If a H.323 signaling entity (IP-DECT User, Gateway GW definition, ...) was deleted while a call was active a trap could happen<br/><br/>Solution: Wait with cleanup until all calls are cleared<br/><br/>Products affected: All<br/><br/>Risk: Minimal, very isolated fix
   
=== Refresh rate of call list gui pages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35755 35755]
|}
Problem: Refresh rate too fast to scroll to the end of the following lists: Master calls, Radio calls and Handover calls.<br/><br/>Solution: Refreshing removed.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== Short local tone ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35757 35757]
|}
Problem: A short local tone is generated before the external tone appears.<br/><br/>Solution: Set in-band-flag in Dect Master.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== Load balancing for trunks ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35761 35761]
|}
Problem: Location registrations don't use load balancing between trunks.<br/>Problems appear with outgoing calls via trunks without location registrations.<br/><br/>Solution: Load balancing for location registrations added.<br/>Make a location registration before every outgoing call.<br/><br/>Products affected: IP1201, IP4001<br/><br/>Risk: Minimal.
   
=== Idle display updates if masters are down ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35770 35770]
|}
Problem: No idle display update if the connection to masters fails.<br/><br/>Solution: Idle display update added. <br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== Forwarded Name Id sometimes corrupted ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35775 35775]
|}
Problem: Sometimes to Name Id, which is forwarded (e.g. Name Id forwarded on DECT Master to Radio, or Name Id forwarded in PBX) strange characters are added. strcopy was used instead of memcpy. Name still transmitted on H.450 null-terminated for compatibility<br/><br/>Solution: Use correct method for copy. Don't add null-character in H.450.<br/><br/>Products affected: All products with IP-DECT or PBX<br/><br/>Risk: Minimal, very isolated fix
   
=== IP22 running out of sync ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35791 35791]
|}
Problem: IP22 initial value for internal PLL set wrong.<br/><br/>Solution: Initial value must be set correctly.<br/><br/>Products affected: ip22<br/><br/>Risk: Minimal, very small change
   
=== switching between primary and secondary DNS on request timeout  fails sometimes in NAT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35805 35805]
|}
Problem: NATted DNS requests waiting for response are kept in a list which is checked in regular intervals for timed out requests. Each timed out request is removed from list and the dns_primary flag is toggled. Thus for an even number of timed out requests the dns_primary flag keeps it's original value.  <br/><br/>Solution: toggle the dns_primary flag only once<br/><br/>Products affected: All<br/><br/>Risk: Minimal
   
=== Memory leak in Dect ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35819 35819]
|}
Problem: Memory leak in Dect.<br/><br/>Solution: Call clean up function.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal.
   
=== Undeleted calls from anonymous handsets. ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35820 35820]
|}
Problem: Calls from anonymous handsets aren't deleted. Channel information is also not deleted.<br/><br/>Solution: Deleting corrected.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== Undeleted call facility object ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35821 35821]
|}
Problem: Call facility object isn't deleted if user is unregistered to PBX.<br/><br/>Solution: Deleting corrected.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== fix for ringback after taking incoming call completion response/ renaming call completion to call completion busy ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35829 35829]
|}
problem: If a user dials the call completion feature code, gets the call completion response call and answers it, so that the other side is ringing, no ringback tone was heard.<br/>Additionally, as call completion no response is currently not possible, I would rename call completion to call completion busy.<br/><br/>fix: api_remote_hold on connector after SIG_ALERT<br/><br/>products affected: all pbx devices<br/><br/>risk: minimal<br/><br/>
   
=== IP-DECT Sporadic Hanging Radio Calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35830 35830]
|}
Problem: It could happen under special call clearing timing conditions that Radio calls remained in the User interface. The affected endpoints could still be called.<br/><br/>Solution: Improve call clearing to avoid this.<br/><br/>Products affected: All IP-DECT products<br/><br/>Risk: Minimal, very isolated fix.
   
=== No Media doing call from IP-DECT to slowstart destination which answers with CONN and Suppl. Services are enabled ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35835 35835]
|}
Problem: Media negotiation result was not forwarded to the radio if CONN was first response to the call.<br/><br/>Solution: Forward media negotiation result<br/><br/>Products affected: All IP-DECT<br/><br/>Risk: None
   
=== provide OEM specific DHCP Vendor Class Identifier ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35838 35838]
|}
Problem: in OEM specific network enviromments it may be necessary to use an OEM specific 'Vendor Class Identifier' in DHCP discover/offer messages.<br/><br/>Solution: 'product_info::vendor_class_identifier' defines the OEM spceific value, kernel::vendor_class_identifier() provides it.<br/><br/>Products affected: All<br/><br/>Risk: Minimal<br/>
   
=== Unusual memory leaks after closed calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35839 35839]
|}
Problem: Unusual memory leaks after closed calls.<br/><br/>Solution: Call clean-up function for unused events.<br/><br/>Products affected: All devices.<br/><br/>Risk: Minimal.
   
=== join/leave pbx dtmf feature should show all dynamic groups, independent of their current state ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35846 35846]
|}
problem: currently, a user, who dials the join code, just gets his groups with dynamic out state. If he has no such group, his call will be rejected.<br/>This might let the user think, that the dtmf object is buggy.<br/><br/>fix: just show all dynamic in/out groups for leave/join. If a user joins a group, where he is already in, nothing will happen and the user gets his \taffirmation tone.<br/><br/>products affected: all pbx devices<br/><br/>risk: minimal<br/>
   
=== New cause code mapping specification ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35858 35858]
|}
Problem: New cause code mapping specification.<br/><br/>Solution: Cause code mapping changed.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== SIP specific call transfer handling as required by SIP provider ShoreTel ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35872 35872]
|}
Problem: Currently the call initiating the transfer is released as soon as the replacement call enters alerting state and also in case of an early release of the replacement call. <br/>In SIP (RFC-3515) the initiating call must not be released before the replacement call enters connected state. In case of an early release of the replacement call (transfer rejected) the initiating call must not be released but a transfer failure has to be reported.<br/><br/>Solution: SIP/H323 specific transfer handling in phonesig.cpp<br/><br/>Products affected: All INCA phones and IP72<br/><br/>Risk: Medium, needs to be retested with all SIP providers
   
=== RTP jitterbuffer did not work well for RTP out of sequence ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35880 35880]
|}
Problem: Too many packets were dropped when many RTP packets where received out of sequence. In realy life this happens rarely, but it is done with OCS certification tests.<br/><br/>Solution: Jitter buffer fixed, to handle this better.<br/><br/>Products affected: All phones, all IP-DECT, IP800, IP6000<br/><br/>Files: medialib.h, media.cpp<br/><br/>Risk: Moderate. Quite a big change, but still isolated.
   
=== Prevent random INCA leak reports in test ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35882 35882]
|}
Problem: Tests fail randomly because of a leak reported for the var LAN/LINK created by the inca MAC driver and polled in phone idle state any second<br/><br/>Solution: use vars notify mechanism instead of polling<br/><br/>Products affected: All INCA phones, IP72<br/><br/>Risk: None
   
=== Logging of calls in PBX cannot be turned off ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35913 35913]
|}
problem: Call logging in PBX is always on. This can be a privacy problem.<br/><br/>solution: Call logging configurable<br/><br/>products: All products with PBX<br/><br/>files: pbx.cpp/h log.xsl<br/><br/>risk: Minmal. Call logging is now off by default, this could be a compatibility issue.
   
=== H.323 non-efc: User RoundTripDelayRequest as keep-alive ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35916 35916]
|}
problem: For interoperability with some OEM equipment it is required to do the RoundTripDelayRequest keepalive<br/><br/>solution: Implement periodic RoundTripDelayRequest messages<br/><br/>files: h323ch.cpp/h<br/><br/>products: all<br/><br/>risks: Minimal (could be that there is H.323 equipment, which does not understand RoundTripDelayRequest, but very unlikely)
   
=== missing details in event log "no route to destination" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35917 35917]
|}
Problem: cause "unknown" is reported if a packet is directed to a specific interface but cannot be sent because the destination address requires a gateway and there is no gateway configured for this interface.<br/><br/>Solution: fix code<br/><br/>Products affected: All<br/><br/>Risk: None
   
=== Wrong display information on phone, if a call is forwarded to Waiting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35925 35925]
|}
problem: If a object is called which has a CFU set to a waiting queue, no information is sent back to the caller that a call-forward has happened, but a name-id from the waiting queue is sent. So the phone associates this name-id with the number dialed.<br/><br/>solution: Send diverting leg1 info in this case<br/><br/>files: pbx_wait.cpp<br/><br/>products: All products with PBX<br/><br/>risks: minimal. Isolated to forwarded calls to waiting.
   
=== croatian translation corrections ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35935 35935]
|}
<br/>Problem: parts of croatian translation needed corrections<br/><br/>Solution: corrected<br/><br/>Products affected: All phones<br/><br/>Risk: None <br/>
   
=== Sending NOTIFY(sipfrag) with error code reflecting error on transfer call ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35938 35938]
|}
problem: failed transfer call was not correctly indicated on original call<br/><br/>solution: sending of NOTIFY(sipfrag) with error code<br/><br/>products: All products<br/><br/>files: sip.cpp<br/><br/>risk: minmal
   
=== Trap if no PBX line in OEM specific state ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35942 35942]
|}
Problem: Trap if no PBX line in OEM specific state.<br/><br/>Solution: PBX line check added.<br/><br/>Files: dectmaster.cpp<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== IP72: default backlight off ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35948 35948]
|}
<br/>Problem: with factory defaults, backlight level set to 0 (disabled)<br/><br/>Solution: fixed code to activate backlight (level 9)<br/><br/>Products affected: IP72<br/><br/>Risk: None <br/>
   
=== IP72: fix default contrast settings for phones with hw-id F2 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35950 35950]
|}
Problem: with factory defaults, LCD contrast may not be satisfying<br/><br/>Solution: added contrast adjust on phone ui (phone-settings menu)<br/><br/>Products affected: IP72<br/><br/>Risk: None
   
=== Waiting-Queue: No Disconnect-Tone to Caller if external Transfer Call failed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35957 35957]
|}
problem: failed external transfer call did not caused a disconnect tone to be played to the calling party<br/><br/>solution: do not kill the webmedia channel when the external transfer call is started<br/><br/>products: All PBX products<br/><br/>files: pbx_wait.cpp<br/><br/>risk: minmal
   
=== Phone Registration 1 SIP Interop Tweaks - checkmarks cannot be cleared ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=35958 35958]
|}
Problem: The checkmarks under "Configuration/Registration 1/Registration/SIP Interop Tweaks" can be set but not cleared via WEB interface.<br/><br/>Solution: fix evaluation of boolean options<br/><br/>Files: phonesig.cpp<br/><br/>Products affected: all INCA phones, IP72<br/><br/>Risk: None 
   
=== Need to Support STATUS_INQ/STATUS procedure in H.323 for OEM ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36022 36022]
|}
problem: For an OEM product we need the H.323 STATUS_INQ/STATUS procedure to supervice the link state<br/><br/>solution: STATUS_INQ/STATUS in H.323 stack implemented<br/><br/>files: signal.cpp, signal.h, h323sig.cpp, h323sig.h, h323_tbl.tbl<br/><br/>products: all<br/><br/>risk: Moderate, functionality only used in OEM product. Should not have any influence if not used
   
=== Need to set H.323 terminal_type for OEM ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36032 36032]
|}
problem: For interop reasons the terminal-type must be set to 50 even for a VOIP_GW type interface<br/><br/>solution: terminal_type configurable<br/><br/>files: voip.h, h323sig.cpp, h323sig.h<br/><br/>products: all<br/><br/>risks: Minimal. Functionality not used in innovaphone products<br/><br/>
   
=== Hold state indication not cleared on a call transfer requested via direct signalling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36041 36041]
|}
Problem: the call on which the transfer is requested is set on hold by remote party before. the hold state was not cleared after release of this call.<br/><br/>Solution: clear hold state when the replacement call is set up.<br/><br/>Products affected: All INCA phones and IP72<br/><br/>Files: phonesig.cpp, phonesig.h, forms_phone_impl.cpp (test support)<br/><br/>Risk: Low, direct signalling not used in innovaphone environment
''Status:''
Test with GnuGk provided by TAC in phone/transfer OK
   
=== Pickup from executive not possible, if the call was transfered to executive ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36061 36061]
|}
problem: A secretary receives a call for the executive, initiates a consulation call to the executive and hangs up. In this situation the secretary cannot pickup the call from the executive again.<br/><br/>solution: Handle a transfer to the executive<br/><br/>files: pbx_exec.cpp, pbx_exec.h<br/><br/>products: all with PBX<br/><br/>risks: Minimal, very isolated fix
   
=== Make H.245 keepalive with RoundTripDelay messages configurable ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36067 36067]
|}
problem: RoundTripDelay messages cause additional load, so it should be done only if required for interop reasons<br/><br/>solution: Make it configurable in the stack, so it can be turned on for OEMs<br/><br/>files: voip.h, h323.h, h323sig.cpp, h323ch.cpp<br/><br/>products: all<br/><br/>risks: None, in fact it reduces the risk of the change to put in the RoundTripDelay messages
   
=== Firmware stall with MAX_BUSY_TICKS and Watchdog ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36099 36099]
|}
problem: Firmware produces unpredictable stalls which results from a permanent occuring interrupt from the si3241 chip. This interrupt is accidently enabled but never occured in the past.<br/><br/>solution: disable this interrupt<br/><br/>files: si3241.cpp<br/><br/>products: ip28<br/><br/>risks: minimal, very isolated fix
   
=== H.323 reuse TCP did not work for call-independetnt messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36102 36102]
|}
problem: The reuse TCP option is required for OEM trunk interfaces not only for calls but also for call-independent messages. A new TCP socket was opened in this case for each message, which was never closed.<br/><br/>solution: Use existing TCP socket for these messages<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: Minimal, code only executed if reuse_tcp set, which happens only for special OEM cases
   
=== OEM specific trunk busy handling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36103 36103]
|}
Problem: New OEM specific trunk busy handling.<br/><br/>Solution: Handling changed.<br/><br/>Files: dectmaster.cpp, dectdisplay_if.h, dectdisplay.h (oem)<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific pre-dial support ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36105 36105]
|}
Problem: New OEM specific pre-dial support.<br/><br/>Solution: Pre-dial support for OEM added.<br/><br/>Files: dectmaster.cpp<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific location handling during handover ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36107 36107]
|}
Problem: New OEM specific location handling during handover.<br/><br/>Solution: OEM specific location handling changed.<br/><br/>Files: dectmaster.cpp, dectradio.h, dectradio.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific trunk redundancy feature ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36111 36111]
|}
Problem: OEM specific trunk redundancy feature.<br/><br/>Solution: Feature implemented.<br/><br/>Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl (oem).<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific change of PBX registration configuration for coder selection ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36115 36115]
|}
Problem: Coder is rejected (OEM specific).<br/><br/>Solution: Registration configuration changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== Changed keep alive configuration for oem interoperability ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36118 36118]
|}
Problem: Keep alive is required for OEM.<br/><br/>Solution: Keep alive is enabled for OEM.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal. OEM specific.
   
=== OEM specific call status support ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36120 36120]
|}
Problem: OEM specific call status support required.<br/><br/>Solution: Call status support implemented. OEM specific enabled.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal. OEM specific.
   
=== Prevent high Dect-Master CPU load ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36121 36121]
|}
Problem: CPU load in Dect Master device too high.<br/><br/>Solution: Reuse of radio-master TCP connection.<br/><br/>Files: dectmaster.cpp, dectradio.cpp.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal. Tested in previous version.
   
=== DSP channel of transfer initiating call lost when call is released by the party requesting the transfer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36122 36122]
|}
Problem: If the call on which the transfer is requested is released by the remote party before the replacement call reaches alerting/connected state the DSP channel assigned to the initiating call is not freed and lost until reboot. first seen in direct signalling tests but may happen with gk-routed signalling too.<br/><br/>Solution: free DSP channel.<br/><br/>Products affected: All INCA phones and IP72<br/><br/>Files: phonesig.cpp, phonesig.h<br/><br/>Risk: Low, very unlikely to happen in innovaphone environment
   
=== OEM specific unused feature codes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36123 36123]
|}
Problem: Unused feature codes.<br/><br/>Solution: Unused feature codes disabled.<br/><br/>Files: dectfty.xsl (oem), config.h (oem).<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== automagic URL filename expansion in update  'bmc' command wrong ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36124 36124]
|}
Problem: the file name appended to the '/' terminated URL od a 'bmc' command is "ccfp1200" but not "ccfp1200.bin" as documented in wiki and used for the delivered file.  <br/><br/>Solution: fix name in update.cpp, add note to wiki<br/><br/>Products affected: IP1200<br/><br/>Files: update.cpp<br/><br/>Risk: Low, most probably most customers did not use this feature 
   
=== Dect MWI message center number configurable to user number ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36161 36161]
|}
Problem: No possibility to configure a message center number with user number.<br/><br/>Solution: Implementation of this new feature: if MWI is enabled and no fix message number is configured the user's number is called as message center number.<br/><br/>Files: dectfty.h, dectfty.cpp, dectfty.xsl (oem), dtmffty.h, dtmffty.cpp.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== MWI not updated at PP power up ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36162 36162]
|}
Problem: MWI not updated at PP power up.<br/><br/>Solution: Sending mwi state after receiving power up event.<br/><br/>Files: dect.h, dect.cpp (oem).<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal.
   
=== OEM specific Dect ras connection up event ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36163 36163]
|}
Problem: OEM specific Dect ras connection up event specification changed.<br/><br/>Solution: Ras connection up event handling changed.<br/><br/>Files: dectradio.h, dectradio.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific location state for disconnected radio connections ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36164 36164]
|}
Problem: OEM specific location state for disconnected radio connections is not changed.<br/><br/>Solution: Implementation of location state handling changed.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== OEM specific trunk configuration option ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36165 36165]
|}
Problem: OEM specific trunk configuration option is not needed.<br/><br/>Solution: Option removed.<br/><br/>Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl (oem).<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: Minimal.
   
=== Not possible to disable option "Allow DTMF through RTP" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36196 36196]
|}
Problem: Not possible to disable option "Allow DTMF through RTP".<br/><br/>Solution: Fixed.<br/><br/>Files: dectmaster.cpp, dectmaster.xsl (oem).<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal.
   
=== IP800: Lost trace after trap to minifirmware and load to DRAM ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36197 36197]
|}
Problem: Stack was initialized  <br/><br/>Solution: Stack init removed<br/><br/>Files: ip800.cpp<br/><br/>Products affected: IP800<br/>
   
=== Message Waiting Indications from a PBX Message Waiting Object are not visible in a special workíng environment ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36201 36201]
|}
Problem: To receive Message Waiting Indications for a certain number on from a PBX Message Waiting Object on multiple phones each phone uses a separate registration to this Object. A MWI received on a registration triggers only a MWI-key defined for this registration. Because the registration to the Message Waiting Object is not the active registration neither the global led nor the key led (if any) is triggered.    <br/><br/>Solution: a 'global' flag is added to the MWI-key. If the flag is set a MWI matching this key is broadcasted to all registrations at the same PBX. Two MWI-keys need to be defined: one with the 'global' flag for the registration to the Message Waiting Object and one for the user registration. <br/><br/>Products affected: All INCA phones and IP72<br/><br/>Risk: Low, only applied if 'global' flag is set
   
=== An incoming transfer on a call which was initiator of a rejected transfer before did not work (direct signalling) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36210 36210]
|}
Problem: the call on which a transfer is requested is not restored to the correct signalling state after the transfer has been rejected. The new incoming transfer request is accepted but fails after setup of replacement call because of the wrong signalling state. <br/><br/>Solution: save signalling state before setup of replacement call and restore when replacement call fails.<br/><br/>Products affected: All INCA phones and IP72<br/><br/>Files: phonesig.cpp, phonesig.h<br/><br/>Risk: Minimal, direct signalling not used in innovaphone environment<br/>
   
=== Frequency band support for Brazil (Subset of South America) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36216 36216]
|}
Problem: Frequency band support for Brazil (Subset of South America).<br/><br/>Solution: New Dect Radio BMC firmware.<br/><br/>Files: New BMC firmware version PCS 05Ae, dect.h (oem), dect.cpp (oem), dect.xsl (oem).<br/><br/>Products affected: IP1200.<br/><br/>Risk: Normal.
   
=== Unclosed announcement calls in conference ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36219 36219]
|}
Problem: Unclosed announcement calls in conference.<br/><br/>Solution: Fixed.<br/><br/>Files: pbx_bc_conf.cpp.<br/><br/>Products affected: All devices with PBX.<br/><br/>Risk: Minimal, only Broadcast Conference PBX Object.
   
=== XPARENT coder in selection list, but cannot be selected ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36230 36230]
|}
problem: The XPARENT coder is used automatically and is not configurable, but is still shown in the list<br/><br/>solution: Remove XPARENT from list<br/><br/>files: channel.h<br/><br/>products: all<br/><br/>risk: none<br/><br/>
   
=== Restart because of Trap in PBX together with transfer/pickup/call-intrusion and Waiting, Voicemail, MWI ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36235 36235]
|}
problem: Under spedial rare conditions a restart could happen on transfer/pickup/call-intrusion together with calls to pseudo objects like Waiting, Voicemail or MWI, because of an invalid cast.<br/><br/>solution: Invalid cast fixed<br/><br/>files: pbx.cpp<br/><br/>products: All products with PBX<br/><br/>risks: Minimal
   
=== mapping of "600 Busy Everywhere" to cause #17 (User Busy) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36238 36238]
|}
Problem: "600 Busy Everywhere" is mapped to cause #21 (Call rejected)<br/><br/>Solution: Map to cause #17 (User Busy)<br/><br/>Files: sip.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: No risk
   
=== Factory reset with V7 bootcode clears  linear firmware ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36251 36251]
|}
Problem: factory reset didnt check for linear firmware<br/><br/>Solution: check added<br/><br/>Files: flash_firmware.c<br/><br/>Products affected: ipxxx with V7 bootcode ( all except IP3000 and IP72 )<br/><br/>Risk: general bootcode update risk
   
=== Support for IP111 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36255 36255]
|}
problem: lcd/forms support for upcoming phone model IP111<br/><br/>solution: changed code<br/><br/>files: lcd_ip111.cpp<br/><br/>products: all phone-inca phones<br/><br/>risks: none<br/><br/>
   
=== No DISC signaling with INFO(application/qsig) if not supported by remote side ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36259 36259]
|}
Problem: INFO(application/qsig) might not be supported; don't try if not supported<br/><br/>Solution: detection of 415/488 reject for INFO(application/qsig)<br/><br/>Files: sip.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: Missing inband info, since call is released if disc cannot be signaled
   
=== URI parameter "epid" in AOR ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36260 36260]
|}
Problem: Microsoft OCS rejects registration if no "epid" parameter is present<br/><br/>Solution: Adding "epid" parameter to AOR in From header in REGSTER,INVITE,SUBSCRIBE<br/><br/>Files: sip.cpp, sip.h<br/><br/>Products affected: All devices<br/><br/>Risk: Minimal, since unknown parameters are to be ignored (handled transparently) by specification
   
=== Avoid endless authentication re-trying ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36261 36261]
|}
Problem: Endless authentication re-trying if the auth request does not contain a nonce (e.g. NTLM auth)<br/><br/>Solution: Don't take 'no nonce' as 'changed nonce'<br/><br/>Files: sip.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: No risk
   
=== V7 Bootcode shows always 999 after firmware downgrade to V6 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36264 36264]
|}
Problem: Bootcode version was defined in each startup file. That version number identifies only to the primary boot for V6 firmware.With V7 the bootcode version is part of the minifirmware.<br/><br/>Solution: global define for bootcode version number to 1000 added. Bootcode numbering from the build system would cause bootcode update more frequently than needed.<br/><br/>Files: boot.h  startup_*.S<br/><br/>Products affected: ipxxx with V7 bootcode ( all except IP3000 and IP72 )<br/><br/>Risk: low
   
=== Memory leak when executing call-completion on IP-DECT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36265 36265]
|}
problem: When executing call-completion packets containing faststart elements are not deleted<br/><br/>solution: Free the packets<br/><br/>files: dtmffty.cpp<br/><br/>products: All IP-DECT<br/><br/>risks: Almost no risk
   
=== OEM specific disabling of the feature to change admin login ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36274 36274]
|}
problem: For an OEM the feature to be able to change login caused undesirable behaviour with IE<br/><br/>solution: Disable the change login feature for OEM<br/><br/>files: command.cpp command.h<br/><br/>products: all, but change should change behaviour only for OEM products<br/><br/>risk: Only for OEM products
   
=== Fix for internal test module for Dect ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36283 36283]
|}
Problem: Memory leak and trap in dummysig module.<br/><br/>Solution: Fixed.<br/><br/>Files: dummysig.h, dummysig.cpp.<br/><br/>Products affected: All Dect devices in test mode.<br/><br/>Risk: No risk; module only used for internal tests.
   
=== OEM specific GUI view ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36285 36285]
|}
Problem: New OEM specific GUI.<br/><br/>Solution: Files changed.<br/><br/>Files: dect_edit_user.xsl (oem), dect_edit_users_right.xsl (oem).<br/><br/>Products affected: IP1201, IP4001.<br/><br/>Risk: No risk; oem specific, only GUI.
   
=== IP150 - Right hand part of OEM specific WEB interface is not displayed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36312 36312]
|}
Problem: An IP150 with OEM id 9 (FHF) does not display the right hand part WEB interface<br/><br/>Solution: add login-menu template to fxf.xsl (OEM replacement for inno.xsl)<br/><br/>Products affected: IP150<br/><br/>Files: fxf.xsl<br/><br/>Risk: None
   
=== Trap because of buffer overrun when logging a login reject ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36323 36323]
|}
problem: If a login reject was logged, depending of the length of the user name a stack buffer was overrun, which could cause a trap<br/><br/>solution: fix buffer size<br/><br/>files: command.cpp<br/><br/>products: all<br/><br/>risks: none
   
=== SIPS missing in phone UI in protocol list ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36346 36346]
|}
problem: SIPS missing in phone UI in protocol list<br/><br/>solution: fixed in code<br/><br/>files:<br/><br/>products: phone_inca, ip72<br/><br/>risks: none<br/>
   
=== Trap if too many licenses installed and slave obtains license from master ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36347 36347]
|}
problem: If many licenses are installed on a master (e.g. all test licenses), the master traps as soon as a slave tries to read the licenses, because of buffer overrun.<br/><br/>solution: Increase buffer size, better check for buffer overrun.<br/><br/>files: inno_lic.cpp<br/><br/>products: All products with PBX<br/><br/>risks: No risk
   
=== Fix for trap in HTTP client ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36357 36357]
|}
problem: trap in HTTP client (deleted packet to user)<br/><br/>solution: fixed in code<br/><br/>files: httpclient_i.cpp<br/><br/>products: all products<br/><br/>risks: no risk
   
=== mwi function key configuration in the phone-ui was not complete ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36360 36360]
|}
problem: mwi function key configuration in the phone-ui was not complete<br/><br/>solution: fixed in code, added "global" and "append own number" flags<br/><br/>files:<br/><br/>products: phone_inca, ip72<br/><br/>risks: none
   
=== Clear all sockets if registration changes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36361 36361]
|}
problem: In case of the reuse_tcp option, old socket where used even if registration changed. Fallback from IP-DECT Standby to Master did not work because of that.<br/><br/>solution: cleanup all sockets if registration changes<br/><br/>files: h323.h h323sig.cpp<br/><br/>products: IP1200<br/><br/>risks: limited to IP1200
   
=== OEM specific registration handling if a trunk goes down ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36385 36385]
|}
Problem: Reregistration is missed if a trunk goes down.<br/><br/>Solution: Reregistration of users registered to this trunk before added.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== IP72: use production settings variable to det default contrast ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36386 36386]
|}
problem: IP72: use production settings variable (if available) to det default contrast<br/><br/>solution: read vars1, set accordingly<br/><br/>files: lcd_ip22x.cpp<br/><br/>products: IP72<br/><br/>risks: none<br/><br/>
   
=== PBX routing fails, because access to deleted buffer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36429 36429]
|}
problem: When doing call routing in the PBX in a very short interval the called party number is read from a already deleted buffer. If the buffer is recycled during this period the routing fails.<br/><br/>solution: Delete buffer after call routing<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: Small risk of collateral damage doing call routing in PBX
   
= V7 Hotfix  2 (09-70300.08) =
Changes included in Version 7 Hotfix2
[http://mantis.innovaphone.com/view.php?id=36129 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== OEM specific registration handling if a trunk goes up ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36435 36435]
|}
Problem: Reregistration of all users is missed if a trunk goes up.<br/><br/>Solution: Reregistration of users added.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== R-key usage after handover in alerting state ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36465 36465]
|}
Problem: R-key usage is not possible if handover was made during alerting state.<br/><br/>Solution: Radio call state set command added.<br/><br/>Files: dectradio.cpp.<br/><br/>Products affected: All dect devices.<br/><br/>Risk: Minimal.
   
=== OEM specific infinite loop because of invalid pointer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36467 36467]
|}
Problem: Infinite loop because of invalid pointer in endpoint location object.<br/><br/>Solution: Pointer update during endpoint update added.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== SIP allocation limit is too low at 500kB ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36490 36490]
|}
Problem: SIP allocation limit is too low at 500kB and should be platform dependend higher<br/><br/>Solution: Use the platform dependend limit<br/><br/>Files: sip.h, sip.cpp, siptrans.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: Out of memory traps due to badly chosen platform dependend limit
   
=== PBX: Call Completion sometimes indicated call-back possible, even if called user still busy ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36587 36587]
|}
problem: A call back possible was indicated if a connected call was cleared on the monitored user, even if this call was a call without media for supplementary services.<br/><br/>solution: For call completion check if disconnected call was with media<br/><br/>files: pbx.cpp<br/><br/>products: All products with PBX<br/><br/>risks: No known risks
   
=== SOAP/TAPI did not show connected for monitored operator of Waiting Queue ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36588 36588]
|}
problem: If a user received a call as operator of a waiting queue, this call was indicated in SOAP/TAPI as alerting even if the user accepted the call.<br/><br/>solution: Fixed bug which prevented forwarding of SIG_CONN to SOAP under some special conditions<br/><br/>files: pbx.cpp<br/><br/>products: All products with PBX<br/><br/>risks: Since the change is at a quite central place, there could be a change in behaviour in other places as well.
   
=== SIP:TRANSIT calls are terminated if unknown coder has been negotiated ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36606 36606]
|}
problem: SIP:TRANSIT calls are terminated if unknown coder has been negotiated<br/><br/>solution: Do not terminate these calls<br/><br/>files: sip.cpp<br/><br/>products: All products with PBX or GATEWAY<br/><br/>risks: Problems with re-negotiation later on
   
=== IP header of IGMP reports contains invalid Option field ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36607 36607]
|}
Problem: The IP header option field of IGMP reports was badly initialized and did not contain the router alert option.  routers or switches may ignore the reports because of the missing option.  network maintenance tools may report an error for the wrong option field. <br/><br/>Solution: place router alert in ip_data[0-3], not behind it :-(<br/><br/>Products affected: all products<br/><br/>Files: ipproc.cpp<br/><br/>Risk: None
   
=== Trap when changing H.323 tracing while H.323 calls are up ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36610 36610]
|}
problem: When the tracing of the H.323 was changed while a call was up, a restart happened the next time a message was received for this call.<br/><br/>solution: Bug fixed, which caused writing into the wrong object<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== Bad URI parameter "epid=(NULL)" in INVITE ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36611 36611]
|}
problem: Bad URI parameter "epid=(NULL)" in INVITE <br/><br/>solution: no epid parameter when interface is not registered<br/><br/>files: sip.cpp<br/><br/>products: All products with PBX or GATEWAY<br/><br/>risks: no risk
   
=== Obtain license from master did not work on standby PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36624 36624]
|}
problem: If a PBX7#0 license was used on a standby to obtain licenses from master, the standby crashed<br/><br/>solution: Bug fixed to avoid crash<br/><br/>files: pbx.cpp, inno_lic.cpp, inno_lic.h<br/><br/>products: All with PBX (except a minimal change in inno_lic, which affects all products with licenses<br/><br/>risks: No real risk
   
=== ISDN: Use REL for call rejection instead of DISC as an interop option ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36629 36629]
|}
problem: Some ISDN public switches seem to have a problem with calls rejected using a DISC message.<br/><br/>solution: Interop option added to use REL instead<br/><br/>files: q931.cpp, q931.h, te_tbl.tbl, isdn_interop.xsl<br/><br/>products: All with ISDN interfaces<br/><br/>risk: No real risk, since behaviour is changed only if option checked
   
=== SIP/TCP Response not always been sent through connection of incoming request ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36631 36631]
|}
problem: If a remote SIP/TCP device uses an inbound TCP connection on its side to send a request, the innovaphone opened a new outbound connection for the response.<br/><br/>solution: Keep connection in context of server transaction in order to send the response on the same connection no matter if inbound or outbound<br/><br/>files: siptrans.cpp, siptrans.h<br/><br/>products: All products<br/><br/>risks: other transport problems with SIP/TCP and SIP/TLS
   
=== PBX Routing to a object without Node/PBX not possible from Slave to Master ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36648 36648]
|}
problem: If a PBX object without Node and PBX is configured, it should be possible to call this object on a given PBX by dialing the Node Prefix of this PBX and the Number of the object. This was not possible from a slave to a master.<br/><br/>solution: Routing fixed<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Possible collateral damage should be limited to objects without node/pbx
   
=== Wrong or duplicate MWI interrogation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36652 36652]
|}
Problem: MWI interrogation is not enabled, but interrogation is sent, or MWI interrogation is enabled and interrogation is sent duplicate.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dtmffty.cpp.<br/><br/>Products affected: All dect devices.<br/><br/>Risk: Minimal.
   
=== Media negotiation problem at OCS ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36654 36654]
|}
problem: Mediation server rejects our reINVITE with 491<br/><br/>solution: Avoid sending reINVITE when Media-Relay and Exclusive-Coder is configured<br/><br/>files: sip.cpp<br/><br/>products: All gateway products<br/><br/>risks: causing other media negotiation problems
   
=== IP4001 minifirmware sometimes doesnt start ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36658 36658]
|}
problem: unused IRQ are not disabled<br/><br/>solution: disable unused IRQs<br/><br/>files: ip4001.cpp<br/><br/>products: ip4001<br/><br/>risks: none
   
=== PBX-SOAP UserRedirect call routing did not work for Users not in root-node together with escapes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36661 36661]
|}
problem: If a call was transfered by SOAP/TAPI to a destination containing escape prefixes, the escape was not removed as it should<br/><br/>solution: Routing fixed<br/><br/>files: pbx.cpp<br/><br/>products: All products with PBX<br/><br/>risks: Collateral damage in the context of PBX call routing
   
=== Soft conversion via 'drive/CX0' also started after read-operation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36688 36688]
|}
problem: Soft conversion via 'drive/CX0' also started after read-operation. Ought to start only after write-operation.<br/><br/>solution: Fix to be offered with v7 hf2.<br/><br/>files: fp_xcode.cpp<br/><br/>products: All products with CF card<br/><br/>risks: none
   
=== syslog not available in viewer mode ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36691 36691]
|}
problem: syslog not available in viewer mode (while trace is available)<br/><br/>solution: give access to syslog in viewer mode<br/><br/>files: log.xsl<br/><br/>products: All products<br/><br/>risks: no risk
   
=== alerting calls cannot be picked from trunk object when a connected call is parked at the trunk user ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36694 36694]
|}
Problem: a phone was configured with 2 park keys addressing different park positions at the same object. if an alerting call was picked up by pressing the corresponding key and parked back by pressing this key again an alerting call indicated at the other key could not picked up thereafter.<br/><br/>Products affected: PBX<br/><br/>Files: pbx.cpp<br/><br/>Risk: seems to be low but needs test
''Status:''
Hallo Guntram,<br/>in pbx::pick_req() wird der pseudo user ignoriert wenn pbx_user::parked nicht leer ist. Ich hab in V8 mal eingebaut daß pbx_user::pseudo->pickup() aufgerufen wird wenn in pbx_user::parked nichts gefunden wurde. Das scheint zu helfen. Kannst Du mal schauen ob das OK ist?<br/>:-) joachim
   
=== no ringing voltage ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36700 36700]
|}
problem: After few days uptime ringing may fail until box will be reset.<br/><br/>solution: change some initial register values<br/><br/>files: si3241.cpp, si3241.h<br/><br/>products: ip28<br/><br/>risks: none
   
=== clip retry ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36702 36702]
|}
problem: clip reception not assured<br/><br/>solution: sent more than once<br/><br/>files: ab_sig.cpp si3241.cpp<br/><br/>products: ip28<br/><br/>risks: very low
   
=== sprintf from standard library pulled by ip6000 ethernet lib ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36707 36707]
|}
Problem: the file IxEthDBUtil.c uses sprintf instead of _sprintf and thus pulls sprintf and a bulk of needless code from libc (syscall stubs, malloc, floating point functions ..., more than 20 kB).<br/><br/>Solution: use _sprintf<br/><br/>Products affected: IP6000/IP2000<br/><br/>Files: IxEthDBUtil.c<br/><br/>Risk: None
   
=== after bootcode update and softreset the box enters TFTP mode ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36708 36708]
|}
problem: old tftp entry in DRAM is used<br/><br/>solution: adjust tftp entry, call cache_init<br/><br/>files: startup_ac460.s cache_ac460.s boot.h<br/><br/>products: ip800 ip1200 ip1201<br/><br/>risks: none
   
=== park function key extensions to provide line key functionality ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36771 36771]
|}
Problem: the park function key does provide the line key functionality as expected/preferred by some customers mainly in italy, france and the states<br/><br/>Solution: add two flags the the park function key<br/>1) Park Active Call before Unpark - when a call is unparked with such a key and the currently active call was unparked before with another park-key the active call is parked back to it's previous position.<br/>2) Automatic Connect after Unpark - when a call is unparked with such a key the call is automatically connected to the requesting phone. when parking a call with such a key the call is immediately removed from phone, no busy tone is played.  <br/><br/>Products affected: all phones<br/><br/>Files: phone_user_ui.cpp, phone_config.h, fkey_edit_park.xsl, app_reg.cpp, phone_config.cpp, app_fkey.cpp, app_call.cpp, app_ctl.h<br/><br/>Risk: Low, behaviour changed only if explicitely configured
   
=== Trap on special call disconnect collisions for ISDN-ISDN calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36772 36772]
|}
problem: A trap could happen if the incoming call was disconnected before the outgoing channel was initialized<br/><br/>solution: Check for this situation implemented<br/><br/>files: media.cpp medialib.h<br/><br/>products: all<br/><br/>risks: low risk of collateral damage in the area of channel connect/disconnect
   
=== UART modem IRQ not serviced ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36805 36805]
|}
problem: modem IRQ may cause continous interrupts<br/><br/>solution: read MSR register<br/><br/>files: uart_drv.cpp<br/><br/>products: all products with uart_drv (3000,4001,phone_inca,1200)<br/><br/>risks: none
   
=== UART not part of IP4001 project ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36806 36806]
|}
problem: used in the ascom ip4001 build<br/><br/>solution: add uart to ip4001 project, change uart to support 32bit uart access and the fifo mode used in ip4001<br/><br/>files: ip4001.vcproj uart_drv.cpp<br/><br/>products: ip4001 ip3000 ip1200 ip1201<br/><br/>risks: low
   
=== IP4001 production test interface start procedure is unreliable ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36807 36807]
|}
problem: start procedure assumes that a  global variable is persistent over reset<br/><br/>solution: use config flags mechanism instead<br/><br/>files: ip4001.cpp, prodtestif_init.cpp<br/><br/>products: ip4001<br/><br/>risks: none
   
=== forward calling name identification on waiting queue during DTMF dialing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36811 36811]
|}
problem: calling party's name identification was not forwarded by waiting queue after DTMF dialing<br/><br/>solution: forward received calling party's name identification<br/><br/>files: pbx_wait.cpp<br/><br/>products: All PBX waiting queues<br/><br/>risks: low risk
   
=== PBX error log for external call transfer attempt, which is not allowed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36818 36818]
|}
problem: If external transfer is not allowed but user still try, the admin must be made aware, to either enable the external call transfer or to educate the users.<br/><br/>solution: Error log implemented<br/><br/>files: pbx.cpp, pbx.h, pbx_api.h<br/><br/>products: All with PBX<br/><br/>risks: very small risk of collateral damage
   
=== H.323 compatibility issue with h245-after-conn ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36821 36821]
|}
problem: Some H.323 implementations require tunneled H.245 messages to be sent in Facility messages only, not in other signaling messages like Connect<br/><br/>solution: The h245-after-connect option together with H.245 tunneling enforces this behaviour now<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: very low risk of collateral damage. New code executed only if h245-after-connect option selected
   
=== TLS client authentication for interoperability with OCS ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36823 36823]
|}
problem: OCS uses TLS with mutual authentication. The current implementation does not fully support this.<br/><br/>solution: TLS client authentication implemented.<br/><br/>files: tls.cpp, tls.h, rsa.cpp<br/><br/>products: All<br/><br/>risks: very small risk of damage to the TLS state machine
   
=== Authentication name for SIP registration in DECT devices ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36836 36836]
|}
Problem: Wrong copied user authentication name string for SIP registration.<br/><br/>Solution: Fixed.<br/><br/>Files: dectusers.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal.
   
=== pbx dtmf object can cause traps with disabled feature codes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36844 36844]
|}
Problem: if feature codes are disabled and enabled feature codes are called, a check for the disabled feature codes wasn't done, so a null pointer was given.<br/><br/>Solution: check for disabled feature codes<br/><br/>Files: pbx_dtmf.cpp<br/><br/>Products affected: all pbx devices<br/><br/>Risk: none
   
=== Userpart of SIP-URIs not unescaped when parameter "user=phone" present ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36847 36847]
|}
Problem: Userpart of SIP-URIs not unescaped when parameter "user=phone" present. May keep SIP telephones from using the "DTMF Features" object.<br/>E.g INVITE sip:%2367%23@innovaphone.de;user=phone SIP/2.0<br/><br/>Solution: Unescape userpart of SIP-URIs even when parameter "user=phone" is present.<br/><br/>Files: sipmsg.cpp<br/><br/>Products affected: all devices<br/><br/>Risk: none
   
=== Password complexity ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36853 36853]
|}
Problem: Password complexity function doesn't recognize special characters.<br/><br/>Solution: Fixed.<br/><br/>Files: password.cpp, latin1.h.<br/><br/>Products affected: All devices.<br/><br/>Risk: Minimal.
   
=== Dect frequency and other bases GUI page ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36858 36858]
|}
Problem: Dect frequency and other bases GUI page is not shown if Dect is disabled or is not configured.<br/><br/>Solution: Fixed.<br/><br/>Files: dect.cpp, dect.xsl.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal.
   
=== OEM specific dynamic ras connections ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36956 36956]
|}
Problem: Wrong usage counter of ras connection causes a trap.<br/><br/>Solution: Test flag for usage counter added.<br/><br/>Files: dectusers_if.h, dectlocalusers.h, dectlocalusers.cpp, dectradio.h, dectradio.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== OEM specific ethernet connection failure handling improved ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36957 36957]
|}
Problem: Handset doesn't recognize permanent connection failure.<br/><br/>Solution: Inform Dect system about permanent connection failure.<br/><br/>Files: signal.h, signal.cpp, dectradio.h, dectradio.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Dect GUI user list ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36962 36962]
|}
Problem: Sort order of user list handling changes to ascending.<br/><br/>Solution: Sort order handling changed.<br/><br/>Files: dect_users_right.xsl, dect_users_left.xsl, dect_edit_user.xsl.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Minimal.
   
=== DSP code update for IP6000/IP800 and related ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36976 36976]
|}
problem: sometimes DSP fifo write fails after fax transmission<br/><br/>solution: use DSP code 560.10 with improved fax and voice packetizer 2.8, add debugcode to show events to the DSP, channelcontrolmode changed to packet mode ( as in V6 )<br/><br/>files: ac_dsp2.cpp ac_dsp2.h ac_dsp2.h ac48xcfg.h ac48xdef.h ac48xhi.c ac48xhi.h ac48xlo.c ac48xlo.h ac48xopt.h userdef.h dl48624_custom.c dl48624.c<br/><br/>products: ip800 ip1200 ip1201 ip4001 ip6000<br/><br/>risks: low
   
=== IP6000 UI: PRI interface T1 options not hidden in E1 mode ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36977 36977]
|}
problem: interface T1 options not hidden in E1 mode<br/><br/>solution: update xsl file<br/><br/>files: falc56_drv.xsl <br/>products: ip6000<br/><br/>risks: low
   
=== fix for ALARM flooding in SIP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36983 36983]
|}
problem: systems ALARM log was flooded by alarm "NAT discovery failed" (0x00070001)<br/><br/>solution: send this ALARM only once<br/><br/>files: sip.cpp siptrans.cpp siputil.h<br/><br/>products: All devices using SIP with STUN server<br/><br/>risks: low risk
   
=== OEM specific trunk location registration ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36990 36990]
|}
Problem: No location registration should be sent during call or handover.<br/><br/>Solution: Implementation changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== hanging calls when SOAP call transfer fails when using SIP operator phone ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37001 37001]
|}
problem: When SIP phone is used as operator phone and a transfer initiated by operator software (SOAP) fails, a call leg is not terminated by PBX<br/><br/>solution: release call leg on receipt of CT_INITIATE_RESULT<br/><br/>files: pbx_xml.cpp<br/><br/>products: All PBX devices<br/><br/>risks: low risk
   
=== Dect GUI error message because of duplicate long name ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37016 37016]
|}
Problem: If a Dect user is edited and the new duplicate long name is entered, a wrong error message is displayed in the GUI.<br/><br/>Solution: An additional check for this case is added.<br/><br/>Files: dectusers.cpp.<br/><br/>Products affected: All devices.<br/><br/>Risk: Minimal.
   
=== OEM specific cause code mapping ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37051 37051]
|}
Problem: OEM specific cause code mapping specification has been changed.<br/><br/>Solution: Mapping changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== PSTN-&gt;Quickdial-Object-&gt;PSTN Calls May Fail ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37106 37106]
|}
Problem: Calls from the PSTN via a PBX Quickdial object into the PSTN may fail with cause="Error Recovery On Timer Expiry".<br/><br/>Solution: Quickdial object must proceed the incoming call.<br/><br/>files: pbx_qdial.cpp<br/><br/>products: All PBX devices<br/><br/>risks: none
   
=== On GW interfaces w/o registration the config options "Domain" and "Proxy" did not work properly ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37112 37112]
|}
Problem: On GW interfaces w/o registration the config options "Domain" and "Proxy" did not work properly<br/><br/>Solution: Using "Domain" to build SIP-URIs. Use (optional) "Proxy" to send SIP requests to.<br/><br/>Files: sip.cpp.<br/><br/>Products affected: All Gateway devices with No-Reg-SIP-IFs<br/><br/>Risk: Unexpected problems with no-reg or enum interfaces
   
=== Trap because of NULL pointer access sometimes if outgoing call via Trunk Object fails ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37121 37121]
|}
problem: If an outgoing call via a trunk object fails due to no channels available or another cause which would result in a retry on another interface, with DISC message (no REL which is normal), sometimes a trap can happen because of a NULL pointer access.<br/><br/>solution: Check for this condition added<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: No risk, new code is executed only if we had a trap without the change
   
=== Potential trap on outbound ENUM SIP calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37130 37130]
|}
Problem: On ENUM/SIP interfaces a trap may occur if DNS resolving runs into timeout.<br/><br/>Solution: Check signaling state before handling media-info and faciliies.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All Gateway devices with ENUM-SIP-IFs<br/><br/>Risk: Minimal.
   
=== PBX: Routing to objects which conflict with escapes did not work anymore (did work in v6) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37134 37134]
|}
problem: For a call which is routed back to the calling node, because the destination is not found, it should be checked if there is an object with the same number as an escape first, before sending the call to the node-extern. This was already implemented in v6 and removed by accident.<br/><br/>solution: Implementation from v6 put back<br/><br/>files: pbx.cpp<br/><br/>products: All products with PBX<br/><br/>risks: Code possibly not removed by accident but for some reason
   
=== hide option in v7 hides more than in v6, user and phone settings as well ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37140 37140]
|}
problem: hide option in v7 hides more than in v6, user and phone settings as well. so user configuration is not reachable any more. now there is a difference between user and admin config hiding. one can either hide only the admin submenu (as in v6 - protect the phone from being misconfigured by the user and loose registration or IP settings) or hide all configuration menus (as in v7 - for a public phone e.g., allowing only basic functionality with noting to configure)<br/><br/>solution: hide now interpreted as "hide complete", added another hide option which only "hides administration"<br/><br/>files: app/app_gui.cpp phone/admin/phone_admin_ui.* phone/user/phone_protect.xsl phone/user/phone_user_config.cpp phone/app/app_gui.cpp<br/><br/>products: all phones<br/><br/>risks:nome<br/>
   
=== evaluation of #b&lt;num&gt; in the url parameter of "mod cmd UP0 scfg" overrides the character following &lt;num&gt; ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37162 37162]
|}
Problem: file-#b5.txt is evaluated for example to file-0txt (dot missing) <br/><br/>Solution: fix it<br/><br/>Products affected: all<br/><br/>Files: update.cpp<br/><br/>Risk: none
   
=== PBX: CFNR on 'Gateway' Objects executed if remote party did not answer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37169 37169]
|}
problem: A CFNR configured on a Gateway type object (Gateway, Trunk, ...) was executed if remote party did not answer. There is no real application for such a behaviour<br/><br/>solution: Execute CFNR only if there is a local problem (e.g. local ISDN interface does not respond)<br/><br/>files: pbx.cpp<br/><br/>products: all products with PBX<br/><br/>risks: Could be there is an applikation for the old behaviour we did not think of
   
=== H.450 returnError for callTransferInitiate not implemented ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37178 37178]
|}
Problem: H.450 returnError for callTransferInitiate not implemented<br/><br/>Solution: implemented<br/><br/>Files: h450.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: Minimal
   
=== OEM specific radio unregistration handling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37220 37220]
|}
Problem: Infinite loop during OEM specific radio unregistration handling.<br/><br/>Solution: Implementation changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Standby master reports missed radios delayed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37279 37279]
|}
Problem: Standby master immediately reports all radios as missing when going to active mode.<br/><br/>Solution: Standby master checks missed radios delayed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All Dect devices.<br/><br/>Risk: Minimal.
   
=== Calls from registered devices were rejected ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37326 37326]
|}
problem: Calls from registered devices were rejected if the Contact-URI did not match the Contact-URI of the REGISTER<br/><br/>solution: Use 407 to get authorization header and do registration lookup by authorization name<br/><br/>files: siptrans.cpp<br/><br/>products: All PBX and Gateways using SIP<br/><br/>risks: low: sending SIP messages to wrong remote address/port
   
=== SIP calls were rejected with 403 in case the Request-URI did not match the registered Contact-URI ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37327 37327]
|}
problem: SIP calls were rejected with 403 in case the Request-URI did not match the registered Contact-URI (interop with Nortel CS1000 SIP GW)<br/><br/>solution: no check of Request-URI against registered Contact-URI on SIPx interfaces<br/><br/>files: siptrans.cpp<br/><br/>products: All gateway devices using SIPx to register remotely<br/><br/>risks: low risk
   
=== Added SIP interop tweak "Enforce Sending Complete" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37334 37334]
|}
problem: in some gateway installations a "484 Address Incomplete" response is expected to cause release of incoming call instead of waiting for more dialing digits to come<br/><br/>solution: option "Enforce Sending Complete" to disable overlap dialing<br/><br/>files: sip.cpp relay_edit_voip.xsl relay_edit_sip.xsl<br/><br/>products: All gateway devices using SIP<br/><br/>risks: no risk
   
=== OEM specific: sending signaling info messages not until gk connect message ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37365 37365]
|}
Problem: Info messages should only be sent of connect message from PBX is received.<br/><br/>Solution: Implemented for OEM.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Problems registering at some SIP servers with parameter "user=phone" in Contact-URI in REGISTER request ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37523 37523]
|}
problem: Problems registering at some SIP servers with parameter "user=phone" in Contact-URI in REGISTER request<br/><br/>solution: no parameter "user=phone" in Contact-URI in REGISTER request<br/><br/>files: sip.cpp<br/><br/>products: All devices<br/><br/>risks: risk
   
=== OEM specific endpoint deleting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37526 37526]
|}
Problem: Subscription in handset is deleted if PP is deleted in conflict situation. OEM specific.<br/><br/>Solution: Endpoint location cancel event is added before deleting the endpoint.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Unintended monitoring of calling  party when automatic dialling is used ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37586 37586]
|}
Problem: when an automatically dialled call is connected the micro is enabled on. if the calling party does not notice the short beep indicating the connection the called party may unintentionally monitor the calling party.<br/><br/>Solution: 1) PHONE_LOCK_AUTODIAL bit in fine grained function locking to disable the the autodial function and 2) "Administration/Phone/Preferences/Connect Autodial Call Mute" to disable the micro when the connection is established, the micro can be enabled via micro key then.<br/><br/>Products affected: all phones<br/><br/>Files: ?<br/><br/>Risk: none
''Status:''
checked in to 7.00, 08-70300, 8.00<br/><br/>new: #37586: Unintended monitoring of calling party when an automatically redialled call is connected can be prevented now by either disabling automatic redial (fine grained function locking) or by the checkmark "Administration/Phone/Preferences/Connect Automatically Redialled Call with Microphone Switched Off" (equivalent to "config add PHONE APP /redial-mute")<br/>
   
=== Hidden config option /remote-domain-in-from ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37594 37594]
|}
problem: some SIP proxys expect their domain name in From-URI (unregistered interfaces only)<br/><br/>solution: config option to use remote instead of local domain<br/><br/>files: sip.cpp<br/><br/>products: All gateway devices<br/><br/>risks: no risk
   
=== Switching back from MOH did not work sometimes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37596 37596]
|}
problem: No media after switching back from MOH<br/><br/>solution: fix media negotiation<br/><br/>files: sip.cpp<br/><br/>products: All devices using SIP<br/><br/>risks: unexpected problems with media negotiation
   
=== Standby Mobility Master client registration status wrong ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37597 37597]
|}
Problem: Standby Mobility Master client registration status is not updated if primary returns and registration is closed. <br/><br/>Solution: Fixed.<br/><br/>Files: dectmobmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Workaround for OEM H.323 bug (OLC before MSD) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37640 37640]
|}
problem: An OEM equipment sends OLC before the Master Slave Determination is complete<br/><br/>solution: Handle OLC even if Master Slave Determination is not complete<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Minimal, unlikely that other equipment is sending OLC before MSD an expect it is ignored
   
=== Name Identification in Diverting Info ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37643 37643]
|}
problem: Diverting party's name identification not available.<br/><br/>solution: Provide diverting party's name identification in FTY_DIVERTING_LEG2.<br/><br/>files: fty.* sip.* sipfty.cpp h450.cpp pbx.cpp<br/><br/>products: All devices<br/><br/>risks: low risk
   
=== H.323: Duplicate TerminalCapabilitySetAck message sent sometimes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37658 37658]
|}
problem: In some states 2 TerminalCapabilitySetAck messages were sent in response to a single TerminalCapabilitySet message. This can create problems with some third party equipment<br/><br/>solution: Only send a single TerminalCapabilitySet message<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Minimal
   
=== Diverting Info not forwarded by Gateway ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37671 37671]
|}
problem: Gateway did not pass through diverting info (DIVERTING_LEG2) (worked only in case interworking was enabled)<br/><br/>solution: Forward diverting info even if interworking is not enabled<br/><br/>files: relay.cpp<br/><br/>products: All gateway devices<br/><br/>risks: no risk
   
=== PBX: CFNR at user should have precedence over "No Answer" Destination at Trunk ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37677 37677]
|}
problem: It is confusing that a CFNR set at a user is not executed because of a No Answer destination configured at the trunk object.<br/><br/>solution: The CFNR now has precedence over No Answer at Trunk<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: It could be that some customers expect explicitly the old behaviour, but this is unlikely
   
=== One way media when doing multiple transfer together with Media-Relay ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37680 37680]
|}
problem: When a call which was transfered to another PBX with Media-Relay on both PBXs and then another Transfer was done on the remote PBX, there was one-way media. This was due to a H.323 media negotiation bug which could result in one/no-way media with many scenarions as long as Media-Relay is involved<br/><br/>solution: Media Negotiation bug fixed<br/><br/>files: h323ch.cpp, h323ch.h, h323sig.cpp<br/><br/>products: all<br/><br/>risks: There is a small risk of collateral damage
   
=== OEM specific available coders ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37685 37685]
|}
Problem: Coder G726-32 is not supported by OEM PBX and should not be shown.<br/><br/>Solution: Coder G726-32 is not shown.<br/><br/>Files: dectusers_if.h, dectusers.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== OEM specific call release ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37687 37687]
|}
Problem: Call is not disconnected in OEM specific case.<br/><br/>Solution: Release event handling fixed.<br/><br/>Files: dtmffty.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== OEM specific Suppl. Service MWI ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37688 37688]
|}
Problem: OEM specific Suppl. Service MWI doesn't work and default configuration is wrong.<br/><br/>Solution: Implementation and configuration fixed.<br/><br/>Files: dectfty.xsl (oem), dtmffty.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== OEM specific sig media info messages filter ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37689 37689]
|}
Problem: OEM specific PBX doesn't support sig media info messages which should be filtered.<br/><br/>Solution: Sig media info messages are filtered.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Int/Ext added to CF Filter config to allow config of call-forward for internal/external calls only ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37706 37706]
|}
problem: Call Forward for Internal/External calls only was hard to configured (esspecially automatically with TAPI), because unclear which Trunk prefixes to be used for filter<br/><br/>solution: Filter option added to check for Internal/External calls expicility. The private numbering plan is used to determine if a call is Internal<br/><br/>files: pbx_admin.cpp, pbx_edit_cfs.xsl, pbx.cpp, pbx.h, ep_lib.cpp<br/><br/>products: all with PBX<br/><br/>risks: Small risk of collateral damage
   
=== Media Negotiation Problem on SIP-H.323 calls with hold/retrieve ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37726 37726]
|}
problem: On a SIP-H323 call, multiple hold/retrieve cycles could result in no media.<br/><br/>solution: Media Neg. fixed<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Small risk of collateral damage
   
=== Some OEM equipment only accepts one tunneled H.245 message per H.225 frame ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37744 37744]
|}
problem: An OEM equipment creates strange problems with multiple tunneled H.245 messages within a single H.225 PDU, and only Facility PDUs are allowed for tunneled H.245<br/><br/>solution: The option h245-after-conn results now in single H.245 sent in Facility PDUs<br/><br/>files: h323sig.cpp, h323sig.h<br/><br/>products: all<br/><br/>risks: very small risk of collateral damge. h245-after-conn is rarely needed and using seperate Facility for each H.245 should not create problems
   
=== Problems using SIP for box internal signaling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37760 37760]
|}
problem: Internal SIP call (e.g. from PBX to Gateway) was rejected<br/><br/>solution: more sophisticated remote address verification<br/><br/>files: siptrans.cpp<br/><br/>products: All Gateway devices<br/><br/>risks: no risk
   
=== Missing name identification on waiting queue during DTMF dialing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37762 37762]
|}
problem: name id of calling party not forwarded during DTMF dialing on waiting queue<br/><br/>solution: forward name identification<br/><br/>files: pbxwait.cpp<br/><br/>products: All PBX devices<br/><br/>risks: no risk
   
=== OEM specific MSD handling when doing media renegotiation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37790 37790]
|}
problem: OEM H.323 implementation gets confused when receiving a MasterSlaveDetermination message during slowstart media renegotiation<br/><br/>solution: Option to not send MSD in this case<br/><br/>files: signal.h, h323.h, h323sig.cpp, h323ch.cpp, h323ch.h, dectmaster.cpp<br/><br/>products: all<br/><br/>risks: Small risk of collateral damge. This special behaviour is truned on only for the OEM
   
=== OEM H.323 requirement to send saved INFO after receiving CONN ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37793 37793]
|}
problem: OEM equipment answers call with CONN right away and expects dialing info as keypad after CONN. Dialing info maybe get lost.<br/><br/>solution: Send saved dialing info after CONN<br/><br/>files: h323sig.cpp, h323_tbl.tbl<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== keep original call when replacement calls fails (unsuccessful blind transfer) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37796 37796]
|}
problem: When blind transfer failed the original call was terminated.<br/><br/>solution: Keep original call<br/><br/>files: phonesig.cpp<br/><br/>products: All phone devices<br/><br/>risks: no
   
=== PBX Dtmf object: no de/activation of cfnr feature possible ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37798 37798]
|}
problem: un-/checking the cfnr feature code checkbox has no effect<br/><br/>solution: change false attribute name in xsl file, was a false paste<br/><br/>files: pbx_edit_dtmf-ctrl.xsl<br/><br/>products: all pbx products<br/><br/>risks: no
   
= V7 Hotfix  3 (09-70300.11) =
Changes included in Version 7 Hotfix3
[http://mantis.innovaphone.com/view.php?id=37809 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== A PBX Standby Slave using master licenses should use licenses obtained from PBX it is backing up ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37810 37810]
|}
problem: A standby slave obtained licenses from the master it connected to when the PBX it was backing up failed, instead of using the saved licenses from the PBX it was backing up. In a setup with all PBXs obtaining licenses from the Master this did not make a difference, there was only a problem if the PBX which was backed up used local license<br/><br/>solution: Use saved licenses on the standby-slave if the PBX which is backed up is not available anymore<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== License types with exactly 32 characters, created strange characters on PBX Info page ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37813 37813]
|}
problem: A license with a length of exactly 32 characters resulted in random characters added on the PBX Info page. This could happen if a OEM licenses was installed on a IP6000. On some browsers the PBX Info page could not displayed because of that<br/><br/>solution: Make sure the string is 0 terminated<br/><br/>files: inno_lic.cpp<br/><br/>products: all<br/><br/>risks: No risk
   
=== Exclusive Coder G729A should also match for incoming coder G729 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37816 37816]
|}
problem: A coder g729 received on SIP, did not match to exclusiv coder G729A if call was forwarded on H.323, even though these coders are compatible<br/><br/>solution: H.323 fixed to match G729 to G729A exclusive coder config<br/><br/>files: channel.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== Some PBX User attribts could not be modified with SOAP Admin function ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37819 37819]
|}
problem: The PBX user attribs 'url', 'rej-ext', 'no-disc' and 'config' could not be modified with SOAP Admin call with <modify>.<br/><br/>solution: These attribs added to the list of changeable attribs<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== OEM expects response to H.323 MSD even after MSD procedure is complete ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37836 37836]
|}
problem: OEM equipment sends MSD message even though MSD procedure is already complete. This message is ignored because it is unexpected. OEM equipment waits for MSD-ACK<br/><br/>solution: Send MSD-ACK in this case<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== CCNR/CCBS callback indication gets lost when requesting phone is busy ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37840 37840]
|}
Description:<br/> 'A' has a CCNR/CCBS request to user B pending while speaking to 'C'.<br/> 'B' goes off-onhook/onhook, 'A' gets a 'callback-possible' indication and "1 Call pending, name-B...number-B" is displayed on display of 'A'<br/> 'A' goes onhook but the callback is not performed<br/><br/>Solution: perform the callback when the phone is going idle<br/><br/>Products affected: all phones<br/><br/>Files: phonesig.cpp<br/><br/>Risk: none
''Status:''
checked in to 7.00, 08-70300, 8.00
   
=== OEM specific PBX options ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37848 37848]
|}
Problem: Changed specifications for OEM PBX (reuse TCP, round trip delay).<br/><br/>Solution: Options changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Changing PBX/General options can remove automatically generated licenses ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37855 37855]
|}
problem: With PBX OEM licenses another license is generated automatically, which allows registrations for redundancy purposes. This license is removed by accident when changing PBX/General options<br/><br/>solution: Do no remove this license anymore<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== Configured SIP proxy in GK-IF overview not visible ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37863 37863]
|}
problem: Configured SIP proxy in GK-IF overview not visible on interface without registration<br/><br/>solution: show SIP proxy<br/><br/>files: gk.h gk.cpp relay_ifs.xsl<br/><br/>products: All Gateway devices<br/><br/>risks: no risk
   
=== Fix: TLS socket shutdown flow with Internet Explorer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37874 37874]
|}
problem: In some cases IE closes TLS connections in a way that caused syslog to hang up. Therefore syslog could only be called a single time per session using HTTPS and IE.<br/><br/>solution: Add a special shutdown flow for IE in the TLS state machine.<br/><br/>files: tls.cpp, tls.h<br/><br/>products: all <br/><br/>risks: Minimal risk of collateral damage<br/><br/>
   
=== OEM specific alarm report for Standby Master registrations ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37878 37878]
|}
Problem: The Standby Master registration is not deleted in the Mobility Master if the Primary Master recovers and a needless alarm message is created.<br/><br/>Solution: The Primary Master sends also a command to the Mobility Master to delete the Standby Master registration info if the Standby is connected.<br/><br/>Files: dectmaster.h, dectmaster.cpp, dectmobmaster.h, dectmobmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== OEM specific GUI for Standby Master ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37881 37881]
|}
Problem: The Standby Master Mobility Master registration status is not correctly shown if the Standby Master is not active.<br/><br/>Solution: Fixed in OEM specific GUI file.<br/><br/>Files: dectmaster.xsl(oem).<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal.
   
=== Wait for ACK before starting next re-negotiation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37882 37882]
|}
problem: In some cases a re-INVITE with new SDP offer was send before previous INVITE transaction was completed (right after 200/OK was send, before ACK was received).<br/><br/>solution: Postpone new re-INVITE until ACK was received.<br/><br/>files: sip.cpp<br/><br/>products: All devices<br/><br/>risks: collateral damage on media negotiation process
   
=== Multilevel Slaves did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37897 37897]
|}
problem: In a configuration with Slave PBXs registered to another Slave PBXs (not the Master) routing of calls with unknown destinations to the next higher PBX (within the registration hierachy), did only work for one level.<br/><br/>solution: Routing fixed, so that these calls are routed up to the master.<br/><br/>files: pbx.cpp, pbx.h<br/><br/>products: all with PBX<br/><br/>risks: risk of collateral damage in the area of call routing within the PBX
   
=== DSP trap fixed for IP6000/IP800 and related ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37898 37898]
|}
problem: sometimes DSP fifo write fails after fax transmission<br/><br/>solution:  channelcontrolmode changed to packet mode ( as in V6 )<br/><br/>files: ac48xdef.h  ac48xlo.c  userdef.h <br/><br/>products: ip800 ip1200 ip1201 ip4001 ip6000<br/><br/>risks: low
   
=== IP1200 Trap with MWI event (MSF) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37899 37899]
|}
Problem: IP1200 reboots because of invalid pointer in saved MWI event in DECT part. This could also occur during an idle display update.<br/><br/>Solution: Event handling fixed.<br/><br/>Files: dect.cpp.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Normal.
   
=== DECT PBX messaging ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37904 37904]
|}
Problem: Unable to enable Dect messaging to/from PBX.<br/><br/>Solution: Fixed.<br/><br/>Files: dectmaster_if.h.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Low.
   
=== CallIdentifier missing in some H.323 Facility messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37922 37922]
|}
problem: In some H.323 facility messages, which carried tunneled H.245 PDUs or EFC elements the CallIdentifier was missing. Apart from that it violates the standard the only known problem with this is, that these messages are not displayed in a wireshark call graph<br/><br/>solution: CallIdentifier added<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risk: Minimal risk of collateral damage
   
=== Interop tweak for MS Exchange server: "no-diverting-name" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37925 37925]
|}
problem: Call diversion to MS Exchange does not work since display name of diverting party is provided. MS Exchange fails to parse diversion header.<br/><br/>solution: New config option "no-diverting-name"<br/><br/>files: sip.cpp sip.h<br/><br/>products: All gateway devices<br/><br/>risks: no risk
   
=== Local Coder selection does not work after media re-negotiation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37940 37940]
|}
problem: When media re-negotiation happens (hold/retrieve/transfer/...) sometimes the selection of the local coder does not happen even if the remote media address is a local address.<br/><br/>solution: Check for local address fixed<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== Multiple media descriptions were send in SDP answer in some rare cases ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37948 37948]
|}
problem: Multiple media descriptions (m-lines) for same media type were send in SDP answer in some rare cases<br/><br/>solution: Put all in one media description<br/><br/>files: sip.cpp<br/><br/>products: All Gateway and PBX devices<br/><br/>risks: no risk
   
=== Wrong local ip addres in SDP offer in re-INVITE ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37956 37956]
|}
problem: Boxes with multiple local ip addresses may use wrong local ip addres in SDP offer in re-INVITE<br/><br/>solution: Validate local ip address before sending re-INVITE<br/><br/>files: sip.cpp<br/><br/>products: All Gateway and PBX devices<br/><br/>risks: no risk
   
=== DECT Master Trap during MWI update for logged-out handsets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37964 37964]
|}
Problem: IP1200 DECT Master reboots because of invalid pointer in anonymous handsets if Radios send an MWI ack message after handset is logged out from user with pending MWI and is switched on again.<br/><br/>Solution: Fixed.<br/><br/>Files: dectusers.cpp.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Low.
   
= V7 hotfix  4 (09-70300.13) =
Changes included in Version 7 hotfix4
[http://mantis.innovaphone.com/view.php?id=37994 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== IP72: WLAN page breaks after hitting the OK button below ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37143 37143]
|}
problem: IP72: WLAN web-page breaks after hitting the OK button below. the error message is displayed (page not found). after pressing the reload button, the page becomes readable again.<br/><br/>solution: fix in code<br/><br/>files: box/wlan_mgr.cpp box/wlan_mgr.h<br/><br/>products: IP72<br/><br/>risks: none<br/><br/><br/>
   
=== Indeterminate pickup behaviour when multiple registrations receive group indications for the same call ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37969 37969]
|}
Description:<br/>A phone holds multiple registrations to the same gatekeeper. All registrations (users) are members in one group and have group indications enabled for this group. The active registration has a pickup key. If there is an alerting call to some other phone in the group all registrations receive a group indication for the alerting call. If the pickup key is pressed the pickup list shows an entry for each registration. Independent of the list entry selected the call was always picked via the registration with the lowest ordinal.  <br/><br/>Solution: fix selection mechanism, let pickup list start with the entry of active registration.<br/><br/>Products affected: all phones<br/><br/>Files: app_ctl.h, app_fkey.cpp, app_gui.cpp, app_gui.h, app_reg.cpp<br/><br/>Risk: none
''Status:''
checked in to 7.00, 8.00
   
=== Do not send RSeq in provosional response, if 100rel not supported by remote side ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37978 37978]
|}
Problem: RSeq was sent event if 100rel not supported by remote side.<br/><br/>Solution: Do not send RSeq in provosional response, if 100rel not supported by remote side. Add "Require: 100rel" when sending RSeq.<br/><br/>Files: sip.cpp siptrans.cpp<br/><br/>Products affected: All<br/><br/>Risk: No risk
   
=== Send 180/Ringing with Alert-Info instead of 182/Queued on Call-Waiting condition ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37980 37980]
|}
Problem: Some SIP devices don't start local ringback tone on reception of 182/Queued.<br/><br/>Solution: Do not send 182/Queued. Send 180/Ringing with "Alert-Info: <urn:alert:service:call-waiting>" instead.<br/><br/>Files: sip.cpp siptrans.cpp<br/><br/>Products affected: All<br/><br/>Risk: SIP endpoints which processed 182/Queued correctly my not recognize Alert-Info, but at least they will ring (without call waiting indication)
   
=== Call waiting indication from dect handset not transmitted to SIP PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37985 37985]
|}
Problem: Call waiting indication (in ALERT) was not interworked to SIP<br/><br/>Solution: Interwork all FTY element in SIG_ALERT in Dectmaster<br/><br/>Files: dectmaster.cpp<br/><br/>Products affected: Dect devices<br/><br/>Risk: No risk
   
=== Memory leak if multiple registrations of MOH device to PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37993 37993]
|}
problem: Only one Registration of a MOH device is accepted by the PBX. For each additional registration attempt which is rejected some memory is lost.<br/><br/>solution: Free all memory in this case<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== No-Way speech if call-transfer done by H.323 slowstart endpoint on a call routed thru multiple PBXs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37997 37997]
|}
problem: If a slowstart H.323 endpoint (e.g. XCAPI) initiates a call transfer which was routed to this endpoint from another PBX, the is no speech connection after the transfer.<br/><br/>solution: Media negotiation fixed for this case<br/><br/>files: h323ch.cpp, h323ch.h, h323sig.cpp, pbx.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== Trap while processing SUBSCRIBE(reg) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37998 37998]
|}
Problem: Trap while processing SUBSCRIBE(reg).<br/><br/>Solution: Fixed<br/><br/>Files: sip.cpp<br/><br/>Products affected: All PBX devices<br/><br/>Risk: No risk
   
=== no ringing voltage after few days uptime ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=37999 37999]
|}
problem: ringing voltage is not beeing generated after few day uptime.<br/><br/>solution: In case of a RING_FAIL interrupt signaling perform an automatic 'ireset' command to the gateway.<br/><br/>files: si3241_drv.cpp si3241_drv.h<br/><br/>products: ip28<br/><br/>risks: minimal, this automatic has already been proven in earlier firmware verions.
   
=== DTMF during Early Media (after "183 Session Progress") ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38021 38021]
|}
Problem: Key events after reception of "183 Session Progress" were handled as overlap dialing acc. RFC-3578, not as DTMF<br/><br/>Solution: Take 183 response without "P-Sig-Options: Overlap-Dialing" as Address Complete Message<br/><br/>Files: sip.cpp sip.h siptrans.cpp siptrans.h sipstate.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: No risk
   
=== coding of H.323 EFC wrong ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38038 38038]
|}
problem: In all firmware versions before 8.00 the coding of the H.323 EFC elements does not conform to the standard. It cannot simply be changed, because then compatibility to innovaphone equipment with version 6.00 and 7.00 (earlier versions had no EFC) is lost.<br/><br/>solution: With 'config change H323 /fix 1' the default coding of the EFC elements is changed to be standard. A PBX/Gatekeeper uses innovaphone parameters to transmit this information to any registered clients. Clients adapt the coding according to the information received at registration. If the PBX/Gatekeeper is non-innovaphone the standard coding is used.<br/><br/>files: h323sig.cpp, h323ras.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== PBX: Minimum of No Answer Timeout reduced from 4s to 2s ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38040 38040]
|}
problem: For some special applications a CFNR timeout of 4s is too long.<br/><br/>solution: Limit reduced to 2s<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: No risk
   
=== H.323 RAS Registration failover to another address which changes local address sometimes fails ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38043 38043]
|}
problem: A failover to another address may change the local address, because to the new address another local network interface may be used. An example for this is a failover from an address on the local ethernet to the loopback address. For the packets sent to the new interface, still the old source address was used.<br/><br/>solution: Initialize local address in this case.<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: Small risk of collateral damage
   
=== mod cmd UP0 scfg ... /force &lt;hours&gt; does not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38044 38044]
|}
Description:<br/>"/force <hours>" shall force excution of the 'scfg' script commmand any <hours>. <hours> were evaluated correctly but the execution was not triggered.    <br/><br/>Solution: set the execution trigger.<br/><br/>Products affected: all<br/><br/>Files: update.cpp<br/><br/>Risk: none
''Status:''
checked in to 7.00, 8.00
   
=== MOH with random=true did not work on local resources ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38066 38066]
|}
Problem: Local MOH-URL with "random=true" always started at beginning of file.<br/><br/>Solution: Honor "random=true" when using FILE_IO to access MOH file.<br/><br/>Files: httpclient_i.cpp httpclient_i.h<br/><br/>Products affected: All PBX devices<br/><br/>Risk: MOH and any other kind of announcement will not work (worst case)
   
=== IP240: directory search for a name starting with a special character other than 1st special character impossible ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38074 38074]
|}
problem: IP240: directory search for a name starting with a special character other than 1st special character impossible. E.g. a name starting with å cannot be entered so easily, because pressing alt+a gives an ä, and changes to phone-directory search mode as expected, but does not allow further toggling to å.<br/><br/>solution: fixed in firmware.<br/><br/>files: phone/forms.h phone/forms/forms_keyboard.cpp phone/dir/phone_dir_ui.cpp<br/><br/>products: IP240, IP210<br/><br/>risks: unknown<br/><br/>
   
=== Trap when disconnecting while blind transfer pending ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38100 38100]
|}
Problem: Trap after onhook at dect handset while blind transfer is ongoing (ringing replacement call)<br/><br/>Solution: Fix handling of onhook at dect handset<br/><br/>Files: dectradio.cpp<br/><br/>Products affected: All Dect devices<br/><br/>Risk: Low
   
=== IP150 Manufacturing: Allow to set default language ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38104 38104]
|}
problem: default language needs the same interface as oem-code<br/><br/>solution: add function to commandprocessor, flashman and cpu<br/><br/>files: command.cpp flashman.cpp cpu.cpp flash.h cpu.h<br/><br/>products: all<br/><br/>risks: low
   
=== OEM specific event handling for info messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38138 38138]
|}
Problem: Signaling info messages are forwarded in Master without keypad info in a OEM specific case.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal. Only OEM specific.
   
=== Lost 200/OK for REGISTER caused switch-over to secondary/backup SIP proxy ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38151 38151]
|}
Problem: Missing 200/OK for REGISTER caused switch-over to secondary/backup SIP proxy. Even if 100/Trying was received.<br/><br/>Solution: Do not switch over to secondary SIP proxy if provosional response (100 Trying) has been received. Re-try REGISTER immediately.<br/><br/>Files: sip.cpp sip.h siptrans.cpp siptrans.h<br/><br/>Products affected: All devices using SIP<br/><br/>Risk: Low
   
=== Inbound calls on ENUM/SIP interfaces were rejected ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38154 38154]
|}
Problem: Inbound calls on ENUM/SIP interfaces were rejected with 407 due to filter configuration (remote ip address). Filte cannot be configured for ENUM/SIP interfaces.<br/><br/>Solution: Use fix mask 0.0.0.0 to accept inbound calls.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All gateway devices<br/><br/>Risk: No risk
   
=== out of memory trap when firmware upload fails (for example because of a flash problem) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38180 38180]
|}
Description: the data to write is kept in a packet which is only freed when an upload is started. After a succcessful upload the packet is empty but in case of a premature abort the packet may hold a large amount of data  <br/><br/>Solution: delete data at time of error, not only before next upload<br/><br/>Products affected: all<br/><br/>Files: flash_firmware.cpp<br/><br/>Risk: none
''Status:''
fixed in 8.00, 7.00
   
=== IP-DECT or anlog interfaces with DTMF feature codes enabled cannot handle call-completion MWIs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38190 38190]
|}
problem: There is no good way how on IP-DECT or analog interfaces with DTMF feature codes enabled, MWIs because of call-completion can be handled.<br/><br/>solution: Ignore these MWI messges<br/><br/>files: dtmffty.cpp<br/><br/>products: all<br/><br/>risks: no risk
   
=== Logging of Administration did show passwords ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38194 38194]
|}
problem: If Administration logging was activated, any password changes were logged. This is considered a security problem.<br/><br/>solution: Passwords replaced by '****'<br/><br/>files: command.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk of collateral damage
   
=== IP24, IP302, ... trap if diverted call to analog interface is received ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38198 38198]
|}
problem: If a diverted call, which is a call containing a leg2 facility, to an analog interface is received. The box restarts because of a NULL pointer access<br/><br/>solution: Fix the handling of the fact, that the analog signaling does not know leg2 facilities<br/><br/>files: relay.cpp<br/><br/>products: all with analog interfaces<br/><br/>risks: None
   
=== call-forward was executed on pickup calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38214 38214]
|}
problem: If pickup was initiated with a function key and there was a CFU set for this user, then the CFU was executed for the resulting pickup call, so the call was not indicated on the phone where the f-key was pressed, but on the cfu destination. This was very confusing for users.<br/><br/>solution: Do not execute cfu in this case<br/><br/>files: pbx.cpp<br/><br/>products: all with pbx<br/><br/>risks: Small risk of collateral damage in the area of call routing on pbx
   
=== Gateway: ',' not possible in registration name ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38216 38216]
|}
problem: A ',' in registration name cause the string behind the ',' being interpreted as registration number<br/><br/>solution: First seperate name/number, then do urldecode<br/><br/>files: gk.cpp<br/><br/>products: all with Gateway<br/><br/>risks: None
   
=== PBX Waiting: DTMF destination using '.' to match any digit combined with destination name did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38217 38217]
|}
problem: A destination name configured in a Waiting queue for received DTMF with '.' used in the to be mached DTMF digits did not work. The name was not dialed, but only the entered digits<br/><br/>solution: Dial name in this situation<br/><br/>files: pbx_wait.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== H.323 discovery or registration with password does not work thru ETH1 on the PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38219 38219]
|}
problem: If a GatekeeperRequest message is received on ETH1, the response is sent out using the IP address of ETH0, so the client receives a wrong IP address. The GatekeeperRequest message is used for registration with password and for Gatekeeper Discovery.<br/><br/>solution: Send out the IP address whiches matches to the address of the client<br/><br/>files: h323ras.cpp, h323.h<br/><br/>products: all<br/><br/>risk: Minimal risk of collateral damage
   
=== Loosing registration when SIP server changes its ip address ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38228 38228]
|}
Problem: Some SIP server may change its IP address. No DNS is done to get the new IP address.<br/><br/>Solution: Query DNS for new Ip address of SIP server.<br/><br/>Files: sip.cpp sip.h<br/><br/>Products affected: All devices using SIP<br/><br/>Risk: Low
   
=== Web GUI shall use a relative reference ("//...") instead of an absolute URI ("http://...) for a link to an extenal box ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38252 38252]
|}
Description: If a box is accessed via https an access to another box via the GUI should also use https.  <br/><br/>Solution: use releative references, i.e. leave off the scheme<br/><br/>Products affected: all<br/><br/>Files: alarm_log.xsl fault_details.xsl fault_log.xsl dhcp_leases.xsl<br/><br/>Risk: none <br/>
''Status:''
checked in to 8.00, 7.00
   
=== EDSS1 divertingLegInformation2 not decoded ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38267 38267]
|}
Description: Interworking for EDSS1 divertingLegInformation2<br/><br/>Solution: decode supplementary service facility divertingLegInformation2<br/><br/>Products affected: all gateways<br/><br/>Files: g950.cpp<br/><br/>Risk: none
''Status:''
v8,v7,v6
   
=== OEM specific trunk down handling ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38284 38284]
|}
Problem: Call is not rejected if trunk is down.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== OEM specific GUI trunk state ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38285 38285]
|}
Problem: Trunk state in Standby Master mode is wrong.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.h.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal. Only OEM specific.
   
=== PPP config shall exclude PRI interfaces without HDLC capability ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38306 38306]
|}
Description: Currently all PRI ports can be configured for PPP connections. This is confusing on an IP2000 (no HDLC support at all) or an IP3000 without HDLC chip.<br/>  <br/>Solution: check HDLC/CHANNELS >= 1<br/><br/>Products affected: all<br/><br/>Files: ip_config.cpp<br/><br/>Risk: none
''Status:''
checked in to 8.00, 7.00
   
=== Calling party's number/name ignored when processing MESSAGE request ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38359 38359]
|}
Problem: Calling party's number/name ignored when processing MESSAGE request.<br/><br/>Solution: Get calling party number/name from received MESSAGE request.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All gateway devices<br/><br/>Risk: No risk
   
=== MESSAGE request rejected with 403 if registration lookup fails without trying 407 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38429 38429]
|}
Description: If registration look-up fails for MESSAGE request, 403 is send without trying 407 first.<br/><br/>Solution: Send 407 in order to get the username for registration look-up.<br/><br/>Products affected: PBX devices<br/><br/>Files: sip.cpp<br/><br/>Risk: none
   
=== OEM specific Dect endpoint idle display ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38478 38478]
|}
Problem: Idle display is not correct if no redundant trunk is configured and all primary trunks are down.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== Dect GUI user list search ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38498 38498]
|}
Problem: It is not possible to search for user names containing spaces in Dect user list.<br/><br/>Solution: URL decoding added.<br/><br/>Files: dectusers.cpp.<br/><br/>Products affected: IP4001, IP1201, IP1200.<br/><br/>Risk: Low.
   
=== src/dst port are put into src/dst ip address of tcp/udp packets coming from 127.x.x.x for wireshark pcap packets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38623 38623]
|}
Problem: Wireshark can't differ different calls with local addresses.<br/><br/>Solution: local ip address bytes 2 and 3 used for port<br/><br/>Files: debug.cpp, debug.h, udp.cpp, tcp.cpp, tls.cpp<br/><br/>Products affected: all<br/><br/>Risk: Low.
   
=== Upload GUI css oem change ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38634 38634]
|}
Problem: Upload Firmware/Bootcode progress percent is not independent for oem products.<br/><br/>Solution: HTML changed.<br/><br/>Files: up_boot_v7.htm, up_prot_v7.htm, *.css (OEM).<br/><br/>Products affected: All products.<br/><br/>Risk: Low.
   
=== Media re-negotiation with media-relay exclusive coder interface did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38635 38635]
|}
problem: Media-relay-exclusive-coder interfaces are used as connection to carriers which do not support media renegotiation. Any tranfer or other operation which results in media re-negotiation on a PBX behind such an interface should result in local media re-neg. only. This did not work for some special scenarios<br/><br/>fix: Handle the special scenarios<br/><br/>files: h323ch.cpp<br/><br/>products: all
   
=== Empty facility messages sent to non-innovaphone equipment ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38636 38636]
|}
problem: Innovaphone facilities are not sent to non-innovaphone equipment, but this filter caused empty facility messages to be sent instead of omitting these messages completely. This can confuse other equipment<br/><br/>solution: Don't send these messages<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risk: Very small risk of collateral damage
   
=== Fax/Modem relay with G711u does not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38717 38717]
|}
problem: Fax/Modem relay with G711u does not work<br/><br/>solution: Fix modem bypass payloadtype<br/><br/>files: ac_dsp3.cpp<br/><br/>products: ip22 ip24 ip28 ip302 ip305<br/><br/>risk: Very small risk of collateral damage
   
=== PBX Twin Phone feature did not work together with group indications ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38758 38758]
|}
problem: On a PBX user with group indications incoming calls were not only sent to the busy phone (in case there was a busy phone), but to the other phones as well.<br/><br/>solution: Do not handle calls to the phone used to send group indications as normal calls<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== Trap in SIP message construction ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38771 38771]
|}
problem: Trap when SIP message with Content-Type header is constructed<br/><br/>solution: Initialize unused members to zero<br/><br/>files: sipmsg.cpp<br/><br/>products: all SIP<br/>
   
=== PBX SOAP SendMessage: Not possible to send messages to users at other PBXs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38774 38774]
|}
problem: When trying to send messages with SOAP/UserMessage to destinations at other PBXs, the call used to transmit this message was sent without destination address to the other PBX and could not be terminated there.<br/><br/>solution: Use right destination address<br/><br/>files: pbx_xml.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal risk of collateral damage
   
=== Media re-negotiation after transfer fails on SIP trunk and results in no-audio ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38781 38781]
|}
problem: Bad SDP offer is sent out to SIP provider during re-negotiation after internal transfer<br/><br/>solution: Fix handling of postponed app channels (in case of request-of-offer)<br/><br/>files: sip.cpp sip.h<br/><br/>products: all with SIP<br/><br/>risks:
   
=== H.450 call-completion request coding failed if destination number empty ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38796 38796]
|}
problem: A H.450 CC request was coded wrong in case the destination number was empty. This can happen in some QSIG interworking scenarios<br/><br/>solution: Coding fixed<br/><br/>files: h450.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== PBX: Restart when trying to add a node object without name ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38805 38805]
|}
problem: If a Node object is added without name a restart happens.<br/><br/>solution: Display error if no name is configured for node<br/><br/>files: pbx_admin.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== OEM specific location response message ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38821 38821]
|}
Problem: Delete command is sent to radios if an endpoint in location restore command is unknown by master. A location cancel command should be sent instead.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.cpp, dectradio.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== new phone mode "Use Phone Handset like a Headset, Ingnore Hookswitch Signals" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38824 38824]
|}
Description:<br/>some switchboard operators are used to work with the handset in a headset like manner. they never place the handset on hook and expect to receive inbound calls via handset instead via speakerphone.  <br/><br/>Solution:<br/>checkmark "Administration/Phone/Preferences/Use Phone Handset like a Headset, Ingnore Hookswitch Signals". If checked the handset will be operated like a headset, the headset port is disabled. inbound calls are accepted on the handset with the respective 'headset'-key (space (IP200a/IP240), Ok (IP230)). this key can also be used to drop the current call or to start a new call when the phone is idle. The speaker key works as usual.<br/>This mode is not supported for the IP110, IP111 and IP150.  <br/><br/>Products affected: all phones<br/><br/>Files: phone_pref.xsl app_call.cpp app_cfg.cpp app_cfg.h app_ctl.cpp app_disp.cpp app_form.cpp<br/><br/>Risk: minimal risk of collateral damage
   
=== DECT Standby-Master only starts if LDAP is synchronized ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38828 38828]
|}
Problem: DECT Standby-Master only starts if LDAP is up and synchronized once.<br/><br/>Solution: Condition removed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Low.
   
=== DECT MSF login ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38831 38831]
|}
Problem: It is not possible to login to DECT MSF module with telnet.<br/><br/>Solution: Function signature changed.<br/><br/>Files: dectmsf.h, dectmsf.cpp.<br/><br/>Products affected: IP1200.<br/><br/>Risk: Low.
   
=== port init confuses ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38833 38833]
|}
Problem: Port initialization confuses depending on startup delay between the driver entities.<br/><br/>Solution: Solve this dependency<br/><br/>Files: si3241_drv.cpp<br/><br/>Products affected: ip28 only<br/><br/>Risk: low
   
=== Interop problem with SoundPoint IP 501 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38835 38835]
|}
problem: If IP501 is held and MOH is about to be played to IP501, we send reINVITE with "sendonly" to IP501. IP501 answers with 'inactive' which caused the remote party to be put on hold also.<br/><br/>solution: Ignore 'inactive' in SDP answer when we sent 'sendonly' in SDP offer.<br/><br/>files: sip.cpp<br/><br/>products: All with SIP<br/><br/>risks: No risk.
   
=== IP110: cannot reach sent message screen ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38836 38836]
|}
problem: on IP110 send message, go to main menu - messages - sent - list, try entering the message with arrow right, it is being dialed instead of showing message details<br/><br/>solution: fix in code<br/><br/>files: phone/list/phone_list_ui.cpp<br/><br/>products: IP110<br/><br/>risks: none<br/><br/><br/><br/>
   
=== T38 capability indication at call setup (Interop Cirpack) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38837 38837]
|}
problem: Initial SDP offer lists audio AND t38. Both with media port. Cirpack does not switch over to t38 with reINVITE. Which is required by innovaphone.<br/><br/>solution: List t38 in initial offer with port=0. Means t38 is a supported capability.<br/><br/>files: sdpmsg.cpp<br/><br/>products: All with SIP<br/><br/>risks: May trouble other equipment
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== Conference Interface duplicate release ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38840 38840]
|}
Problem: Conference Interface sends duplicate release messages and it results in a trap. It occurs if conference is disconnected from MOH.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: conference_sig.h conference_sig.cpp.<br/><br/>Products affected: All devices with Conference Interface.<br/><br/>Risk: Small risk of collateral damage. Only if conference is used.
   
=== VM trace messages without trace flag set ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38857 38857]
|}
problem: Voicemail trace messages not suppressable<br/><br/>solution: suppress trace outputs<br/><br/>files: pbx_vm.cpp, vm_script_if.cpp<br/><br/>products: All PBX products<br/><br/>risks: No risk
   
=== Mask for remote ip address filter not configurable for SIP interfaces ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38865 38865]
|}
problem: Mask for remote ip address filter not configurable for SIP interfaces. (Default was 255.255.255.255)<br/><br/>solution: Make remote mask configurable for SIP interfaces.<br/><br/>files: sip.cpp<br/><br/>products: All with SIP<br/><br/>risks: No risk
   
=== Bug on call handling on SIP/ISDN calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38889 38889]
|}
problem: If the incoming SIP call was terminated before connect, a new SIP call was initiated in reverse direction.<br/><br/>solution: Cleanup postponed events on call release.<br/><br/>files: sip.cpp<br/><br/>products: All with SIP<br/><br/>risks: No risk
   
=== Improve pseudo random number quality on IP6000 and IP4001 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38891 38891]
|}
problem: The pseudo random numbers created by the kernel are highly correlated and predictable, under some circumstances.<br/><br/>solution: Implement the same algorithm as on the MIPS platform to get much better numbers.<br/><br/>files: ip6000.cpp, ip4001.cpp<br/><br/>products: IP6000, IP4001<br/><br/>risks: No risk
   
=== IP230: deactivated backlight level not being restored after reset ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38901 38901]
|}
problem: on IP230 go to phonesettings->set lcd_backlight to off and save changes by pressing the menu key. after reset, lcd-backlight is on although the phonesettings menu entry still off. <br/><br/>solution: the lcd-backlight level hasn't been set upon reboot. fixed in code.<br/><br/>files: phone/user/phone_user.cpp<br/><br/>products: IP230, IP240<br/><br/>risks: none<br/><br/><br/>
   
=== possible null pointer access in pbx_dtmf/dirsearch with btree::get_count ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=38941 38941]
|}
Description: pbx traps with parallel directory search calls, if one of those calls currently has no search_results and a null pointer is accessed.<br/><br/>Solution: check for null pointer<br/><br/>Products affected: all pbx devices<br/><br/>Files: pbx_dirsearch.cpp, pbx_dtmf.cpp<br/><br/>Risk: none
   
=== Trap, Voicemail &lt;pbx-im&gt; causes trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39002 39002]
|}
problem: Voicemail <pbx-im> causes trap<br/><br/>solution: set fty_event_innovaphone_message.next to '0'<br/><br/>files: pbx_vm.cpp<br/><br/>products: All PBX products<br/><br/>risks: No risk <br/>
   
=== no CLIP on internal calls with T-COM Concept P412 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39010 39010]
|}
Description: T-COM Concept P412 does not present CLIP information on internal calls. This phone requires CLIP information only after the first ring pause. Internal calls normally start with two short rings with a pause that is too short for sending CLIP. In this case CLIP is sent after the second ring pulse which is not accepted by this phone.<br/><br/>Solution: add new feature 'first ring followed by CLIP' which starts ringing with a sort of preamble that consists of 100ms ring pulse and 1second pause carrying CLIP information. Afterwars normal ringing is continued.<br/><br/>Products affected: all analoue gateways except ip21<br/><br/>Risk: none
''Status:''
fixed in V7-hotfix4, 7.00, 8.00
   
=== T38 NAT Problem ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39074 39074]
|}
problem: NAT connection is not established if ip24 bedind the NAT doesnt start sending data.<br/><br/>solution: Send No-Signal indications every second if no fax signal is present.<br/><br/>files: ac_dsp3.cpp<br/><br/>products: ip22 ip24 ip28 ip302 ip305<br/>risks: low
   
=== OEM specific GUI redundant trunk state ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39081 39081]
|}
Problem: Redundant trunk state in Standby Master mode is wrong.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Minimal. Only OEM specific.
   
=== OEM specific DECT connection messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39092 39092]
|}
Problem: No OEM specific messages are sent to DECT if connection changes from Master to Standby-Master and vice versa.<br/><br/>Solution: Implementation fixed.<br/><br/>Files: dectradio.h, dectradio.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== OEM specific Dect duplicate endpoint message option ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39096 39096]
|}
Problem: Location cancel command is sent to radios if a conflict is recognized. Dect message option is missed.<br/><br/>Solution: Message option added.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== Strange characters in device name if too many öäü... are used ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39109 39109]
|}
problem: A buffer definition has not taken into account, that a non-ascii7 character takes 6 bytes if stored url-encoded utf8<br/><br/>solution: Buffer size adjusted<br/><br/>files: command.cpp, command.h<br/><br/>products: all<br/><br/>risks: none
   
=== missing ring voltage after few days uptime ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39110 39110]
|}
Description: si3241 chip refuses switching of the ring voltage to the analogue port. Instead a RING_FAIL_IA interrupt is thrown.<br/><br/>Solution: Apply a complete re-initialisation of the specific port when RING_FAIL_IA is thrown.<br/><br/>Products affected: ip28 only<br/><br/>Risk: low
   
=== T38 NAT Problem ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39111 39111]
|}
problem: NAT connection is not established if ip800/6000 behind the NAT doesnt start sending data.<br/><br/>solution: Send No-Signal indications every second if no fax signal is present.<br/><br/>files: ac_fax2.cpp ac_fax2.h<br/><br/>products: ip800 ip6000 <br/>risks: low
   
=== Call Forward to trunk does not work if can-redirect is set, but redirection not possible ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39124 39124]
|}
problem: To do redirection the destination number has to be adjusted (trunk prefix removed). This is done even if redirection is not possible. A redirection cannot be done if the call destination is a broadcast group and one member has a forward configured.<br/><br/>solution: Adjust number only if redirection is actually performed<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== new H.323 signaling option to transmit H.245 tunneled messages in Facility only ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39125 39125]
|}
problem: Some poor H.323 implementations require H.245 tunneled messages to be transmitted in H.225 Facility only. In the past this was combined with the h245-after-connect option (another fix for poor implementations).<br/><br/>solution: New option for H.245 tunneling in facility only<br/><br/>files: signal.h, h323.h, h323sig.cpp, dectmaster.h, dectmaster.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== OEM specific broadcast message behavior ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39130 39130]
|}
Problem: Broadcast messages should not be sent to radios which connection type is not static.<br/><br/>Solution: Condition for sending broadcast messages added.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: IP4001, IP1201.<br/><br/>Risk: Low. Only OEM specific.
   
=== no media when retrieving a call put on hold because of a MCast  Announce call ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39140 39140]
|}
Description:<br/>When a busy phone receives a MCast Announce call the currently active call is put on hold, the announce call is connected and becomes the active call. When the announce call is released from remote a busy tone is played until the user presses the disconnect key. Then the previously active call is retrieved and made the active call again.<br/>The DSP/H323 channel binding was not released when holding the call and thus assigning another DSP channel on retrieve failed.    <br/><br/>Solution: send CHANNEL_PAUSE to DSP-channel to release the channel DSP/H323 binding <br/><br/>Products affected: all phones<br/><br/>Files: phone_dir_ui.cpp<br/><br/>Risk: low
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== too many 'No  Media Data Received' events ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39143 39143]
|}
problem: In special traffic cases or if a call was up very short it is normal that no media data is received during the call, still a 'No Media Data Received' event was generated<br/><br/>solution: Generate 'No Media Data received' event if for more then 4s no data is received on an connected call<br/><br/>files: medialib.h, media.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== sporadic assert in http.cpp ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39152 39152]
|}
problem: sporadic assert in http.cpp<br/><br/>solution: add debug to http.cpp to find out the details<br/><br/>files: http.cpp<br/>products: all<br/><br/>risks: low
   
=== sporadic fifo problem  on ac_dsp3 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39153 39153]
|}
Description: Sometimes the dsp fifo comes out of sync.<br/><br/>Solution: debugs added, assert added to find out more details. Update to DSP code 560.14 may help according to audiocodes<br/><br/>Products affected: ip22 ip24 ip28 ip302 ip305<br/><br/>Files: ac_dsp3.cpp<br/><br/>Risk: low
   
=== PBX: External calls not released automatically anymore ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39161 39161]
|}
problem: In v6 phones released a call which was connected after a 2s timeout after receiving disconnect. This way a busy tone was played for 2s only. In v7 we had to change this, because we needed better control from the TAPI over the phone.<br/><br/>solution: Automatic disconnect now implemented in the Trunk object<br/><br/>files: pbx_trunk.cpp, pbx_trunk.h<br/><br/>products: all with PBX<br/><br/>risks: Very low risk of collateral damage
   
=== PBX: Reject External call rejects calls diverted with CFNR as well ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39165 39165]
|}
problem: If the Reject External Calls flag is set at a user, calls which are diverted to this user with CFNR are rejected as well.<br/><br/>solution: Fix code so that checking of internal number works<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== Phone shall not play a local busy tone after another inband tone has been played already ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39185 39185]
|}
problem: V7 phones do not automatically release a call which was connected after a 2s timeout after receiving disconnect. The PBX releases the call after 2 seconds now. As a side effect after 2 seconds busy tone from remote the local busy tone was played for two more seconds. <br/><br/>solution: Do not play a local busy tone if a disconnect was received before the release.<br/><br/>files: app_call.cpp<br/><br/>products: all phones<br/><br/>risks: Very low risk of collateral damage
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== DECT Standby-Master Trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39190 39190]
|}
Problem: DECT Standby-Master could trap if it is not completely configured and the Master reboots.<br/><br/>Solution: Fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Very low risk of collateral damage.
   
= V7 hotfix  5 (08-70300.14) =
Changes included in Version 7 hotfix5
[http://mantis.innovaphone.com/view.php?id=39250 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== Missing attribute "entity" in dialog information XML ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39229 39229]
|}
problem: Mandatory attribute "entity" to dialog information XML (RFC-4235) was missing.<br/><br/>solution: Add mandatory attribute "entity" to dialog information XML.<br/><br/>files: sip_dialog_info.cpp<br/><br/>products: All PBX with SIP<br/><br/>risks: None
   
=== Paramter "rport" in Via header in 200/OK for REGISTER causes trouble ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39276 39276]
|}
Problem: Paramter "rport" in Via header in 200/OK for REGISTER makes the SIP interface re-calculate its Contact-URI. If "rport" comes without "received" parameter, the SIP interface will use 0.0.0.0 as local address in all Contact-URIs.<br/><br/>Solution: Check for "received" parameter.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== Windows Mobile 6.1 SIP Client cannot cancel a call ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39335 39335]
|}
Problem: Windows Mobile 6.1 SIP Client cannot cancel a pending INVITE transaction if no 100/Trying was sent before 180/Ringing. Even if 180/Ringing was sent in time (200ms).<br/><br/>Solution: Always send 100/Trying immediately when user agent "RTC/1.5" is calling.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk
   
=== Avoid re-negotiation on incoming call leg after connect on secondary registration ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39339 39339]
|}
Problem: On a call to a multi-registered user the caller gets the SDP of the primary reg in 200/OK. If call was answered on a secondary reg, a re-negotiation follows the 200/OK.<br/><br/>Solution: Postpone initial 200/OK until SDP channels from secondary registration available.<br/><br/>Files: sip.cpp<br/><br/>Products affected: PBX<br/><br/>Risk: Collateral damage on media negotiation
   
=== Incoming re-INVITE for a no-longer-existing call was handled like INVITE ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39372 39372]
|}
Problem: Incoming re-INVITE for a no-longer-existing call was handled like INVITE. A new call was (re-)created.<br/><br/>Solution: Reject re-INVITE with "481 Call Leg/Transaction Does Not Exist".<br/><br/>Files: siptrans.cpp sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== deprecated default ToS Value 0x10 for RTP even after factory reset ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39373 39373]
|}
problem: even after factory reset a TOS value 0x10 remains configured because it's defined in the builtin config file of the firmware.<br/><br/>solution: in all config.h files remove "/priority-tos 0x10" from the "start ip IP0 ..." command.<br/><br/>files: config.h<br/><br/>products: all<br/><br/>risks: None
''Status:''
checked in to 8.00, 7.00
   
=== Enbloc dialing fix for DECT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39425 39425]
|}
Problem: Enbloc dialing does not work if first digit(s) match suppl. service.<br/><br/>Solution: Condition added how to send the digits in the sig event info message to the next module if no suppl. service matches.<br/><br/>Files: dtmffty.cpp.<br/><br/>Products affected: All products.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== Damaged authorization header in ACK ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39428 39428]
|}
Problem: Authorization header in ACK is be damaged in case a PRACK caused digest re-calculation.<br/><br/>Solution: Keep authorization header from INVITE for ACK, even if PRACK needs digest re-calculation.<br/><br/>Files: siptrans.cpp sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: Authorization problems
   
=== H.323 NAT did not forward RAS.NonStandardMessage and failed to decode EFC ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39438 39438]
|}
Problem: H.323 NAT did not forward RAS.NonStandardMessage and failed to decode well formed EFC.<br/><br/>Solution: Forward RAS.NonStandardMessage and decode well formed EFC elements.<br/><br/>Files: nat_h323.cpp<br/><br/>Products affected: All routing devices doing H.323 NAT<br/><br/>Risk: Non-standard EFC is not forwarded anymore (from older innovaphone software)
   
=== RTP not turned off with H.323 channel pause on IP-DECT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39449 39449]
|}
problem: A H.323 channel pause received by an IP-DECT system, did not turn off the RTP media. If a PBX used this for Hold signaling it could disturb the media receiving on the endpoint initiating the hold.<br/><br/>solution: Turn off RTP when receiving pause<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Low risk of collateral damage
   
=== No Early-Media if doing rerouting from physical (ISDN) interface to physical interface in non-EFC cases ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39470 39470]
|}
problem: If an incoming non-efc call routed to an ISDN interface and then has to be re-routed to another ISDN interface (down, busy, ...), there is no early-media.<br/><br/>solution: Fix H.323 media negotiation to support early-media in this case<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: Small risk of collateral damage
   
=== DECT null pointer trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39472 39472]
|}
Problem: Null pointer trap in radio call object.<br/><br/>Solution: Null pointer check added.<br/><br/>Files: dectradio.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== PBX User Interface: Only 8 filters are supported for CF, but more could be entered ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39476 39476]
|}
problem: On PBX Edit CF User interface more then 8 filters could be entered, even if only 8 aree supported<br/><br/>solution: User interface fixed to allow 8 only<br/><br/>files: pbx_edit_cfs.xsl<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== OEM specific sending of non-call facilities should disconnect TCP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39478 39478]
|}
problem: After sending of OEM specific non-call facility the TCP connection was not cleared<br/><br/>solution: clear TCP connection, use SIG_REL to indicate TCP cleared<br/><br/>files: h323_tbl.tbl, h323sig.cpp, h323sig.h<br/><br/>products: all<br/><br/>risk: Minimal, not used except for OEM
   
=== Wrong branch parameter in Via header on ACK for 2xx response ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39536 39536]
|}
Problem: According to RFC-3261, the branch value in an ACK for a 2xx response must be different from the value in the INVITE.<br/><br/>Solution: Calculate new branch value for ACK after 2xx response.<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== German/Swedish (åäöü) characters in HTTP Client ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39540 39540]
|}
Problem:German/Swedish (åäöü) characters in HTTP Client cannot be configured<br/><br/>Solution: convert http form data from UTF8 to ISO-Latin1<br/><br/>Files: httpclient_config.cpp<br/><br/>Products affected: All <br/><br/>Risk: Low
   
=== Trap in httpclient during file io access if no CF card is present ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39541 39541]
|}
Problem: Traps e.g. during music on hold<br/><br/>Solution: remove file_get instance after application confirms the close.<br/><br/>Files: httpclient_i.cpp<br/><br/>Products affected: All <br/><br/>Risk: Low
   
=== phones get confused within their 'missed calls list' ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39543 39543]
|}
Description: phones with internal 'missed calls list' obviously get confused when the gateway sends CLIP multiple times. Sometimes calls are counted multiple times.<br/><br/>Solution: Do not send CLIP multiple times.<br/><br/>Products affected: ip28 only<br/><br/>Risk: low
''Status:''
also relevant for V6hotfix14
   
=== Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39545 39545]
|}
Description: GUI Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function.<br/><br/>Solution: Correct, add missing entries<br/><br/>Products affected: ip28<br/><br/>Risk: none
''Status:''
also relevant for V6hotfix14
   
=== Better Diagnostics for Free Error restarts ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39556 39556]
|}
problem: The cause for a restart because of free error was very hard to find.<br/><br/>solution: Trace last free<br/><br/>files: os.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== BYE was not sent when DNS resolving failed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39561 39561]
|}
Problem: BYE must be sent to the Contact address of the received final INVITE response. The the domain name of the Contact-URI cannot be resolved, the BYE was not sent at all.<br/><br/>Solution: Send BYE to address/port where the original INVITE was sent to.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== Trap if diverted call (with diverting leg2 info) received on ISDN with EDSS1 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39573 39573]
|}
problem: If a call is received on an ISDN interface with EDSS1 protocol which contains a diverting leg2 info facility (the call was diverted), a traps happens because of duplicate free of memory. Collateral Damage of http://wiki.innovaphone.com/index.php?title=Support:DVL-Hotfixes#EDSS1_divertingLegInformation2_not_decoded<br/><br/>solution: dupilcate free of memory removed<br/><br/>files: q950.cpp<br/><br/>products: all with ISDN interfaces<br/><br/>risks: None
   
=== GN9120 DECT/DHSG Headset - No Media when a waiting call is accepted after the active call has been released by remote party ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39583 39583]
|}
problem: Two seconds after the active call has been released by the remote party the phone rings to indicate the waiting call. When the active call was connected to the headset one or more RING commands are sent to the headset. When the call is accepted at the phone or the headset a TALK command is sent to the headset but the media strem between headset and phone is not (re)established. This happens only with the GN9120, not with the GN9350.  <br/><br/>solution: send an IDLE command before RING.<br/><br/>files: keys_gen.cpp<br/><br/>products: all Phones with an active GN9120<br/><br/>risks: None, the additional command is sent only in this special situation
''Status:''
checked in to 8.00, 7.00, 08-70300, 08-60900
   
= V7 hotfix  6 (09-70300.16) =
Changes included in Version 7 hotfix6
[http://mantis.innovaphone.com/view.php?id=39666 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== no ringing voltage after few days uptime ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=36445 36445]
|}
Description: gateway in 'alerting' condition but no ringing voltage. After power-cycle or softreset this situation is cleared.<br/><br/>Solution: Chipset reset in case of RING_FAIL_IA signaling from Slic Chip as soon as all other ports gone on-hook.<br/><br/>Products affected: ip28<br/><br/>Risk: mid, does not occur in normal cases. Occurence yet not clear.
''Status:''
also relevant for v6hotfix, V7, V8
   
=== IP-DECT: Allow overlap numbers ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39386 39386]
|}
Problem: Some (non-innovaphone) PBX support overlap numbers (e.g. 40 and 400). The IP-DECT did not support this.<br/><br/>Solution: Allow overlap numbers.<br/><br/>Files: dectusers.cpp.<br/><br/>Products: All IP-DECT devices.<br/><br/>Risks: Low risk of collateral damage.
   
=== The message indicating an active Automatic Redial disappears after first redial attempt ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39645 39645]
|}
problem: When Automatic Redial is activated the text "Redial" is displayed in the message line. This text disappears after the first redial attempt and thus the user may easy forget to stop it when leaving it's place. Further each redial attempt is listed under "Active Recalls" and thus it's not clear what should be be cancelled.  <br/><br/>solution: fix in code<br/><br/>files: app_cc.cpp app_ctl.cpp app_ctl.h app_disp.cpp forms.h forms_gen.cpp forms_ip72.cpp phone_list.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== PBX SOAP: Compatibility to Version 6 broken with UserInfo "num" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39667 39667]
|}
problem: In Version 6 a info "num" was available containing the full number including node prefixes for a user. In Version 7 this information was provided differently, but old applications need the Version 6 info.<br/><br/>solution: Provide the old info if old WSDL is used<br/><br/>files: pbx_xml.cpp<br/><br/>products: all with PBX<br/><br/>risks: Small risk of collateral damage
   
=== Trap when the http connection timeout is reached immediately after the connection is dropped from remote ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39686 39686]
|}
problem: When a http socket connection was dropped from remote and and the disconnect timer fired before the http_request object was destructed a shutdown was sent to the already closed socket. <br/><br/>solution: fix in code<br/><br/>files: http.cpp<br/><br/>products: all<br/><br/>risks: None
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== PBX CF Loop was detected with CFB, which was not even executed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39764 39764]
|}
problem: If a CFU was set to an endpoint which had an CFB back to this endpoint, this was treated like an CFU loop, which resulted in the call being rejected with user busy<br/><br/>solution: Loop detection fixed<br/><br/>files: pbx.cpp<br/><br/>products: all with pbx<br/><br/>risks: Small risk of collateral damage
   
=== IP-DECT master crash if config update and anonymous endpoints ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39765 39765]
|}
problem: A crash because of NULL pointer access could happen if a config update was done while anonymous endpoints exist<br/><br/>solution: Code fixed<br/><br/>files: dectusers.cpp<br/><br/>products: all ip-dect<br/><br/>risks: Severe risk of collateral damage
   
=== sporadic  HTTP_REQUEST Assertion ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39783 39783]
|}
problem: HTTP_REQUEST Assertion: no servlet occurs if lots of logging is done to a box<br/><br/>solution: delete servlet after last send to avoid race condition with next http request <br/>files: http.cpp<br/><br/>products: all<br/><br/>risks: Low risk of collateral damage
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== OEM specific 'scfg' command output ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39835 39835]
|}
problem: the OEM provides an own module to save and restore config in a special format. the 'scfg' command output shall be in same format.<br/><br/>solution: if the OEM module is present 'scfg' replaces the default command sequence by a single command to the OEM module.<br/><br/>files: update.cpp<br/><br/>products: all<br/><br/>risks: None
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== config option to force display of alerting calls both on partner key and on pickup key ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39861 39861]
|}
problem: alerting calls are not displayed on a pickup key if a partner/park key associated to a display line is defined for the alerting party. some customers want such calls to be displayed as well on partner/park key as on pickup key.  <br/><br/>solution: implement option "config add PHONE APP /pick-partner"<br/><br/>files: app_cfg.cpp app_cfg.h app_disp.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== ICMP Address mask requests shall be ignored ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39878 39878]
|}
problem: ICMP Address mask requests as defined in RFC 950 are not really used by current devices and need not to be responded. Some security check programs complain if responses are sent on such requests.<br/><br/>solution: ignore ICMP Address mask requests<br/><br/>files: ipproc.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== Dial funktion key shall provide a pause character for DTMF tone timing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39932 39932]
|}
problem: The "Send in Active Call" checkmark of a dial function key permits to send DTMF digits in an already established call. The time between two digits is fixed to 200 milliseconds which is too fast for some applications.<br/><br/>solution: a comma (',') inserted between the digits represents a delay of 300 milliseconds. "1,2" means that '2' is sent 500 milliseconds after '1', "1,,,2" delays '2' for 1100 milliseconds.<br/><br/>files: phonesig.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Wrong "direction" attribute in dialog-info (group indications) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39983 39983]
|}
problem: Attribute "direction" has always value "initiator". Even if inbound calls are reported. In result call-pickup did not work.<br/><br/>solution: Fix the "direction" attribute.<br/><br/>files: sip.cpp/h sip_dialog_info.cpp/h<br/><br/>products: all PBX devices using SIP<br/><br/>risks: None
   
=== G711u exclusive doesn't work with dtmf featurecodes/directory search/icp pbx objects ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=39986 39986]
|}
problem: if user has G711u exclusive, the above pbx objects won't work as there is no G711u MOH.<br/><br/>solution: instead of MOH, a dialing tone is used now. After receiving first digit, tone is stopped.<br/><br/>files: pbx_dirsearch.cpp/h, pbx_dtmf.cpp/h, pbx_icp.cpp/h<br/><br/>products: all PBX devices<br/><br/>risks: minor
   
=== icp traps with after dialed digits ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40006 40006]
|}
problem: if user does not dial the whole number at once but digit by digit, the box traps.<br/><br/>solution: changed digit handling<br/><br/>files: pbx_icp.cpp/h<br/><br/>products: all PBX devices<br/><br/>risks: none
   
=== Memory Leak when sending non-call facilities with OEM specific H.323 version ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40108 40108]
|}
problem: A call object was not deleted when sending non-call facilities, in case of "reuse-tcp"<br/><br/>solution: Handle this case to delete the call object<br/><br/>files: h323sig.h, h323_tbl.tbl<br/><br/>products: all<br/><br/>risks: None
   
=== IP-DECT: Delete buttons for anonymous subscriptions in GUI ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40112 40112]
|}
Problem: Delete buttons disappear from all anonymous subscriptions in GUI when pressing delete on one subscription.<br/><br/>Solution: Fixed.<br/><br/>Files: dectunknown.xsl.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== IP-DECT OEM specific idle display ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40115 40115]
|}
Problem: Handset idle display does not work correctly in OEM version after handset restart.<br/><br/>Solution: Fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: No risk of collateral damage, OEM only.
   
=== IP-DECT GUI radio list sorting by Id ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40117 40117]
|}
Problem: Radio list can't be sorted by radio id.<br/><br/>Solution: Feature added.<br/><br/>Files: dectmaster_radios.xsl (OEM).<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== PBX replication timeouts too short ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40124 40124]
|}
problem: There are timeouts to slow down adding or removing the rep attribute to user objects to reduce replication traffic. These timeouts have been set to very short values for testing and forgotten<br/><br/>solution: Increase timeouts to normal values<br/><br/>files: pbx.h<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== IP-DECT GUI user list sorting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40133 40133]
|}
Problem: User list can't be sorted by Rights, Display, IPEI or Registration.<br/><br/>Solution: Feature added.<br/><br/>Files: dectusers.cpp, dect_users_right.xsl (OEM).<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== PBX CDR should not be generated for call independent signaling calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40135 40135]
|}
problem: CDR records were generated for control calls (like group indications)<br/><br/>solution: Generate CDR for calls with media only<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: None
   
=== IP-DECT &amp;amp; SIP: Distinctive Ringing support for several OEM PBX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40145 40145]
|}
Problem: Different Alert-Info headers from several OEM PBX are not recognized by SIP and passed through to the DECT system.<br/><br/>Solution: Decode Alert-Info header and pass through call-type information.<br/><br/>Files: sip.cpp dectmaster.cpp<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== Re-transmission of INVITE after CANCEL has been send ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40151 40151]
|}
Problem: If 407 for INVITE arrives after CANCEL has been sent, the INVITE was re-transmitted with autorization header.<br/><br/>Solution: Ignore 407 response after CANCEL has been sent.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== LDAP, ASN.1-Encoding failed for objects with ~100 attributes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40171 40171]
|}
Problem: Node objects with approx. 100 rep-attributes weren't replicatable.<br/><br/>Solution: Fix Asn.1 encoding<br/><br/>Files: ldapsrv.cpp, ldapdir.cpp<br/><br/>Products affected: All PBX products<br/><br/>Risk: none
   
=== PBX: Callforward from waiting to waiting with CFNR at the end of announcement did not work sometimes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40195 40195]
|}
problem: For calls received from a Trunk object the call forward with CFNR from one Waiting to another caused the call being disconnected after 2s. This was collateral damage of fix #39161.<br/><br/>solution: Bug fixed<br/><br/>files: pbx_trunk.cpp<br/><br/>products: all with PBX<br/><br/>risks: Small risk of collateral damage
   
=== IP-DECT Master handover canceled statistic ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40201 40201]
|}
Problem: Dect Master handover canceled statistic is not correct.<br/><br/>Solution: Fixed.<br/><br/>Files: dectmaster.cpp<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== IP-DECT monitor interface for OEM modules ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40202 40202]
|}
Problem: The IP address of the Standby Master is needed in OEM modules.<br/><br/>Solution: New argument was added in monitor function interface and monitor function calls were updated.<br/><br/>Files: dectmaster_if.h, dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== RTP timestamp jumps during hold/retrieve/transfer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40213 40213]
|}
Problem: RTP timestamp jumps during hold/retrieve/transfer. On media-relay scenarios this may confuse the remote side and result into one-way-audio.<br/><br/>Solution: Keep RTP timestamp progressively on media-relay scenarios.<br/><br/>Files: medialib.h media.cpp media_fwd.h/cpp<br/><br/>Products affected: All gateway devices<br/><br/>Risk: No risk.
   
=== Trap in SIP stack on incoming calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40247 40247]
|}
Problem: Trap in SIP stack on incoming calls.<br/><br/>Solution: Fix.<br/><br/>Files: siptrans.h<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== Problem when CFNR should result in same phone ringing again together with busy on 1 call ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40268 40268]
|}
problem: If a user had set busy on 1 call a call forward which should have resulted in ringing the same phone again (e.g. to a broadcast group including this user) the phone stopped ringing<br/><br/>solution: Counting of active calls fixed<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risk: Small risk of collateral damage
   
=== IP-DECT Null pointer trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40271 40271]
|}
Problem: Null pointer trap in dectradio.<br/><br/>Solution: Null pointer check added.<br/><br/>Files: dectradio.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== No authorization was done on de-regstration on SIP client interfaces ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40275 40275]
|}
Problem: If a SIP endpoint de-registers before shutdown a 401 was not handled.<br/><br/>Solution: Keep REGISTER client transaction in order to handle 401 response.<br/><br/>Files: sip.cpp/h<br/><br/>Products: All SIP devices<br/><br/>Risk: Collateral damage on handling of REGISTER responses.
   
=== Dialing from unknown reg for deployment did not work with CFU set at target user ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40278 40278]
|}
problem: A CFU was executed even if the user was dialed from an unknown registration. This prohibited that the unknown registration was assigned to this user.<br/><br/>solution: Do not execute CFU for calls from unknown registrations<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== transparent recording of external calls must be perfomed for inbound and outbound calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40308 40308]
|}
problem: with "Configuration/Registration n/Recording/Mode" = 'transparent' and "Configuration/Registration n/Recording/External Calls Only" = 'checked' only inbound external calls were recorded. if an outbound call is an external call is indicated in the numbering plan of the 'connected number' and this info was not passed to phoneapp.<br/><br/>solution: update numbering plan of remote party with the 'connected number' info, check for external call at connect time<br/><br/>files: phonesig.cpp, app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None 
''Status:''
checked in to 8.00,7.00,08-70300
   
=== H.323 slowstart media renegotiation fails if initaited before the previous neg. completes in remote media case ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40314 40314]
|}
problem: In case of remote media (e.g. the IP-DECT master is doing this) media-reneg. fails if previous media neg. was not completed. Results in IP-DECT no media calls for special supplementary services on some third party PBXs<br/><br/>solution: Fix media neg.<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== TLS socket did not send up remaining data after TCP connection shutdown ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40482 40482]
|}
Problem: In some cases the TLS socket did not send all remaining data up after the remote endpoint closed the TCP connection. This happened if the HTTP-Client got TLS fragments bigger than 2000 byes followed directly by a FIN.<br/><br/>Solution: Delay socket shutdown with the HTTP client until all data has been delivered.<br/><br/>Files: tls.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: Small risk of damage with other TLS applications
   
=== SOAP monitored call to busy on ... busy endpoint was terminated with rel_com instead of disc ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40490 40490]
|}
problem: A call to a busy on ... calls busy endpoint was disconnected with RELEASE-COMPLETE even if monitored by SOAP. This results in SOAP (TAPI) not being able to disconnect the call to turn off the busy signal<br/><br/>solution: Use DISC to clear such a call<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risk: None
   
=== No media if Transfer done by SIP endpoint from H.323 to H.323 endpoint if SIP ep has done Hold/Retrieve ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40600 40600]
|}
problem: Call from H.323 ep to SIP, SIP does HOLD/RETRIEVE and the transfer to another H.323 ep -> No media<br/><br/>solution: Fix media negotiation<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: small risk of collateral damage
   
=== TLS could trap when sending big packets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40609 40609]
|}
Problem: There was a bug in the packet re-fragmentation in the TLS layer that could lead to a trap when sending big packets.<br/><br/>Solution: Fix fragmentation mechanism<br/><br/>Files: tls.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: No risk.
   
=== DTMF detection did not work randomly ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40666 40666]
|}
problem: A config parameter for the DSP channel was uninitialized, which caused DTMF detection not work randomly<br/><br/>solution: Initialize all parameters<br/><br/>files: ac_dsp2.cpp<br/><br/>products: IP6000, IP800<br/><br/>risks: none
   
=== Echo canceling sometimes not active on IP72 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40677 40677]
|}
problem: Echo canceling not active on IP72 is callmanage is used<br/><br/>solution: Prevent too frequent initialisations of the echocanceller<br/>files: omap_codec.cpp<br/><br/>products: ip220,ip72<br/><br/>risks: Low risk of collateral damage <br/>
   
=== Out-Of-Memory trap during voice message recording ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40729 40729]
|}
Problem: VM script tries to record a voice message into a non-existing directory. File writing fails but writing is re-tried endlessly. May result into out-of-memory trap.<br/><br/>Solution: Stop recording on error and do not try again.<br/><br/>Files: webmedia.cpp, pbx_vm.cpp, vm_script_if.cpp<br/><br/>Products affected: All PBX with VM object<br/><br/>Risk: No risk.
   
=== assert with simultaneous write and read access to a cf file ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40759 40759]
|}
problem: if one process writes a file and another process reads this file and the current filesize is a multiple of the cluster size and the next cluster has been alread allocated by the first writing process, the reading process might send a cf_read_event with 0, which causes a trap<br/><br/>solution: check for 0 in cf_read_event and handle this like eof<br/><br/>files: fat32.cpp<br/><br/>products: all devices with cf card<br/><br/>risks: minor, as this constelation is extremly rare
   
=== Out of Memory trap when box is flooded with malformed/bad checksum packets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40767 40767]
|}
problem: when a box is flooded with malformed/bad checksum packets and the packets arrive faster than the resulting log events can be processed by the logging module, the box may run out of memory.  <br/><br/>solution: ipproc.cpp gathers errors for one second, in case of more than 50 errors per second errors are dropped. gathered errors are passed to fault_handler.cpp any second. To prevent overuse of vars when saving errors saving is delayed for one second. only the last 50 errors arriving in this second are saved then. <br/><br/>files: ipproc.cpp, ipproc.h, fault_handler.cpp, fault_handler.h<br/><br/>products: all<br/><br/>risks: Minimal.<br/>
''Status:''
checked in to 8.00, 7.00, 08-70300
   
=== IP-DECT Null pointer trap in Master (OEM) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40779 40779]
|}
Problem: Null pointer trap in dectmaster with immediately send enbloc setup in OEM case.<br/><br/>Solution: Null pointer check added.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== IP-DECT OEM module debug output trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40790 40790]
|}
Problem: Trap during debug output in OEM module with many users.<br/><br/>Solution: Function changed.<br/><br/>Files: dectmobmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: No risk of collateral damage.
   
=== After power up alt-gk was used instead of primary with IP-DECT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40845 40845]
|}
problem: After power up the dectmaster registered the endpoints to the alternate not primary gk as expected. Usually this does not cause a problem, because it should switch over to the primary if the alternate does not respond. But there is a delay.<br/><br/>solution: Fix initialization<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== IP-DECT OEM  module Mobmaster Master/Standby-Master login ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40943 40943]
|}
Problem: Users are missed if Master and Standby-Master are connected at the same time.<br/><br/>Solution: Function fixed.<br/><br/>Files: dectmobmaster.h, dectmobmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== IP-DECT Null pointer trap in Master with anonymous handsets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40947 40947]
|}
Problem: Null pointer trap in dectusers with anonymous handsets.<br/><br/>Solution: Null pointer check added.<br/><br/>Files: dectusers.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== Duplicate execution of interface maps in case of setup without digits ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=40982 40982]
|}
problem: Interface maps are executed with the setup arriving AND with the first digit received. If a CDPN map is configured without digit to match, this could result in the same prefix being added twice<br/><br/>solution: Adjust output of the map on second execution by the output generated with the first execution<br/><br/>files: relay.cpp<br/><br/>products: all gateway products<br/><br/>risk: Small risk of collateral damage
   
=== Changing LDAP server login credentials must force clients to re-login ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41024 41024]
|}
Problem: LDAP server credential administration did not affect existing server connections.<br/><br/>Solution: Apply credentials to existing server connections. Tear down connections, if required.<br/><br/>Files: ldap/*<br/><br/>Products affected: All PBX, Dect Products<br/><br/>Risk: No risk.
   
=== LDAP server user account GUI doesn't accept  5 entries ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41025 41025]
|}
Problem: LDAP Server administration malfunctioned when entering more than three accounts.<br/><br/>Solution: An internal buffer's dimension was too small, causing neglection of input. The buffer size was increased.<br/><br/>Files: ldap/*<br/><br/>Products affected: All PBX, Dect Products<br/><br/>Risk: No risk.
   
=== IP-DECT OEM trunk status inquiry ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41026 41026]
|}
Problem: Status inquiry is lost if a released call is used.<br/><br/>Solution: Function fixed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== Forward last diverting information (not the first) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41036 41036]
|}
Problem: If a several diverting information elements arrive with a call at the gateway, only the first was mapped and forwarded.<br/><br/>Solution: Map and forward last diverting information.<br/><br/>Files: relay.cpp<br/><br/>Products: All Gateway devices<br/><br/>Risk:
   
=== IP-DECT OEM remove endpoint data command for debugging ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41062 41062]
|}
Problem: New command to remove endpoint data for debugging is needed.<br/><br/>Solution: Command added, obsolete command removed.<br/><br/>Files: dectradio.h, dectradio.cpp, dectlocalusers.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: No risk of collateral damage.
   
=== LDAP-Expert-View with unknown Login ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41065 41065]
|}
Problem: Editing under LDAP/Expert by an IE ended in a login loop.<br/><br/>Solution: switch to mod_cmd_login.xml<br/><br/>Files: ldap/flashdirui*.xsl<br/><br/>Products affected: All PBX, Dect Products<br/><br/>Risk: No risk.
   
=== always display full number/name of 1st calling party on pickup key if requested via configuration ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41068 41068]
|}
problem: specially when "Administration/Phone/Preferences/Display Name on Pickup/Partner Key" is checked the calling party number may often be truncated or left off if too much space is needed to display the called parties.<br/><br/>solution: the new checkmark "Administration/Phone/Preferences/Keep Calling Party Info on Pickup Key" forces truncation of called party info instead of the calling party.<br/>  <br/>files: app_disp.cpp, app_cfg.cpp, app_cfg.h, phone_pref.xsl<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== DGPN Mapping Produced Nonsense Numbers ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41102 41102]
|}
Problem: DGPN mapping produced nonsense numbers<br/><br/>Solution: Apply DGPN mapping only, if map is really suitable<br/><br/>Files: gk.cpp<br/><br/>Products affected: All Gateway products<br/><br/>Risk: No risk.
   
=== IP-DECT OEM trunk state after config change ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41125 41125]
|}
Problem: The initial trunk state is not correct after configuration change without reboot. Unnecessary location registration messages are sent.<br/><br/>Solution: Initial trunk state fixed.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage. OEM firmware only.
   
=== immediate diversion activation after receiving icp activation code ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41144 41144]
|}
problem: incoming icp activate only activates diversion if server acknowledges connection<br/><br/>solution: already activate diversion after receiving activation call<br/><br/>files: pbx_icp.cpp<br/><br/>products: all devices with pbx<br/><br/>risks: no
   
=== Misrouting of GRE packets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41214 41214]
|}
Problem: NAT of GRE session may fail due wrong socket selection for incoming GRE packet.<br/><br/>Solution: Check local address of socket object.<br/><br/>Files: ipproc.cpp<br/><br/>Products: All NAT devices<br/><br/>Risk: No risk.
   
=== re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41226 41226]
|}
Problem: re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive".<br/><br/>Solution: Honor media mode change.<br/><br/>Files: sip.cpp<br/><br/>Products: All SIP devices<br/><br/>Risk: No risk.
   
=== Potential Trap in RTP if error logging happens during call clearing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41287 41287]
|}
problem: If an RTP error log is generated when the RTP entity is already closing a NULL pointer access trap can happen<br/><br/>solution: Check for RTP closing before creating the event<br/><br/>files: media.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== PROGRESS with in-band-info not sent on ISDN ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41288 41288]
|}
problem: A PROGRESS message with in-band-info was suppressed even in case no progress indicator was sent before (in SETUP-ACK, CALL-PROC). This caused in-band tones not be available in such situation<br/><br/>solution: Better check when to suppress PROGRESS<br/><br/>files: q931.cpp, q931.h<br/><br/>products: All with ISDN interfaces<br/><br/>risk: Some risk of collateral damage
   
=== IP-DECT OEM module Mobmaster missing endpoints ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41333 41333]
|}
Problem: Endpoints are missed if at least two Mobmaster are used.<br/><br/>Solution: Clean cache function fixed.<br/><br/>Files: dectmobmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage. Only for OEM products.
   
=== IP-DECT OEM data calls unavailable ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41334 41334]
|}
Problem: OEM data calls are unavailable if no trunk is alive, but it should be independent.<br/><br/>Solution: Call accept condition changed.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage. Only for OEM products.
   
=== src-url not transmitted accross PBXs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41344 41344]
|}
problem: The URL Parameter configured at a user is sent with calls of this user. It is put into CDRs by the gateway and can be used for billing purposes. If the call was received from another PBX, the src-url was not forwarded.<br/><br/>solution: Forward src-url<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: None
   
=== configurable TCP send/recv window size to prevent running out memory with a big number of parallel http sessions ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41346 41346]
|}
problem: boxes with limited DRAM like ip302/ip305 may run out of memory when processing a big number of parallel http put requests directed to CF card. This may happen for example when a scfg command is performed by a lot of update clients at the same time. Because of the low CF card speed most sessions cannot access the card for a while and will buffer a full window.<br/>A window size lower than 65535 (the current default) did not work stable with the apache http server, thus the default cannot be changed.  <br/><br/>solution: for custumers using a small box as update server for a big number of clients but do not access another http server the window can be configured.<br/>  config add IP0 /tcp-bs-small <window-size><br/>defines the window size for normal (non-NAT) sockets,<br/>  config add IP0 /tcp-bs-large <window-size><br/>defines the window size for NAT sockets.<br/>The limits for both values are (2 * 1024) <= <window_size> <= (128 * 1024), the default for both values is 65535 as before.<br/><br/>files: tcp.cpp tcp.h ipproc.cpp ipproc.h ip_config.cpp ip_config.h<br/><br/>products: all<br/><br/>risks: None (as long as the default is not changed, depending on http server otherwise).
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Wrong redirecting number on retry of recall ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41357 41357]
|}
problem: A recall after a failed transfer should show the transfer destination as redirecting number. If the recall failed because of the transferor was busy again, this was not the case with the retry of the recall.<br/><br/>solution: Send correct redirecting number<br/><br/>files: pbx.cpp pbx.h<br/><br/>products: All with PBX<br/><br/>risks: Small risk of collateral damage
   
=== Bad Noise Level in RTP Comfort Noise Packets ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41388 41388]
|}
Problem: CN packets contained "0" as noise level, but the noise level is expressed in -dBov which means maximum noise.<br/><br/>Solution: Change noise level value into "127".<br/><br/>Files: media.cpp<br/><br/>Products: PBX voice mail<br/><br/>Risk: No risk.
''Status:''
PBX voice mail sends CN packets during message recording.
   
=== PBX: CDR missing some importent Information if call is forwarded by Waiting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41432 41432]
|}
problem: The PBX CDRs did not show the destination to which calls are forwarded by Waiting with DTMF dialing<br/><br/>solution: Add more information to CDR<br/><br/>files: pbx.cpp, pbx_wait.cpp, pbx_api.h<br/><br/>products: All with PBX<br/><br/>risks: Minimal
   
=== Trap in SIP stack due to misalignment of data struct ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41483 41483]
|}
Problem: Trap in SIP stack due to misalignment of data struct.<br/><br/>Solution: Fixed alignment.<br/><br/>Files: siptrans.cpp<br/><br/>Products: All SIP devices<br/><br/>Risk: No risk.
   
=== Use To header for routing of incoming MESSAGE requests ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41485 41485]
|}
Problem: MESSAGE routing through Gateway did not work properly.<br/><br/>Solution: Use To header for routing of incoming MESSAGE requests.<br/><br/>Files: sip.cpp<br/><br/>Products: PBXs and Gateways<br/><br/>Risk: No risk.
   
=== VM. Escaping missing for directory names and CGPNs encoded in file names ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41642 41642]
|}
problem: <br/>-Voicebox directories for usernames containing '/','*' weren't processable.<br/>-Filenames emerging during <pbx-record> and carrying a CGPN (separated by a hyphen'-') that  contains '*','#' weren't processable.<br/><br/>solution: <br/>-Internally add more escaping for user directories. <br/>-Internally apply escaping for the CGPN name part when processing <pbx-record><br/>-Internally apply unescaping for the CGPN name part when processing <store-split><br/><br/>files: vm_script_if.cpp<br/><br/>products: All with PBX<br/><br/>risks: All private scripts with a '/' in the "root"-attribute of one of the  "<store-..>"-elements must be adapted a'la:<br/>  modify<br/><store-del root="one/two/" name="test.txt"/><br/>  into<br/><store-del root="" name="one/two/test.txt"/><br/>
   
=== Portuguese translation not complete ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41660 41660]
|}
problem: portugeuese translation not complete<br/><br/>solution: fixed phonetext<br/><br/>files: phone/txt/phonetxt.base phone/txt/phonetxt.cpp<br/><br/>products: phones<br/><br/>risks: none<br/><br/><br/>
   
=== Number/Name update during call did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41733 41733]
|}
Problem: Number/Name update during call did not work, since check for extension "from-change" did not work if multiple Supported headers were present.<br/><br/>Solution: Fix parsing of multiple Supported headers.<br/><br/>Files: sipmsg.h<br/><br/>Products: All SIP devices<br/><br/>Risk: No risk.
   
=== add 'rebootn' and 'irebootn' command to make bootcode activation in update process unique in all versions ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41739 41739]
|}
problem: the only method for bootcode activation working for all devices and bootcode versions is the 'reboot' command (as far as it is supported by the running firmware). For straightforward update scripting the commands 'rebootn' and 'irebootn' are required.<br/><br/>solution: add the commands<br/><br/>files: command.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-60900,08-70300
   
=== new 'name' metacharcter string #n in URL parameters in update commands ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41741 41741]
|}
problem: files created for example via "mod cmd UP0 scfg <url> ..." may be identified by hardware number ('#h'), mac address (#m) or ip-address (#i) provided in <url>. sometimes these informations are not remembered when needed. The new '#n' metacharcter string is replaced by <device-name>.<br/><device-name> is the name configured under "Configuration/General/Admin/Device Name" with space, control and punctuation characters except '-' replaced by '_'.<br/>If there is no name configured #n is replaced by "noname".<br/>Because <device-name> is not necessarily unique it should only be used in combination with one of the unique identifiers #h, #m or #i.<br/><br/>solution: expand #n <br/><br/>files: update.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Trap when using SIP/TLS through NAT ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41810 41810]
|}
Problem: Trap when using SIP/TLS through NAT.<br/><br/>Solution: Do not call send_nat_keepalive() in case of connection oriented transport.<br/><br/>Files: sip.cpp<br/><br/>Products: All SIP devices<br/><br/>Risk: No risk.
   
=== sectored firmware upload fails when the first firmware chunk sent to flashmanager is shorter 1000 byte ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41836 41836]
|}
problem: at the beginning of an upload the flasmanager gathers the firmware chunks until at least 1000 byte are available. Then the header is checked and if valid write_firmware() is called to write the packet to flash. A 'start' flag indicates if it is the first call and thus flash segments have to be reserved. This flag is copied from the current chunk(event) but is TRUE in the first event only.<br/><br/>solution: remember start condition separately and clear after first call to write_firmware()<br/><br/>files: flashman.cpp, flashman.h<br/><br/>products: all<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== PBX: Trap when changing filters with 'next' ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41875 41875]
|}
problem: When chaining filters with 'next' a trap could happen when these filters were changed<br/><br/>solution: Fix merged from v8<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: Minimal, fix very well tested in v8 already
   
=== IP-DECT debug output ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41881 41881]
|}
Problem: Option number is missed in debug output.<br/><br/>Solution: Option added.<br/><br/>Files: dectlocalusers.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: No risk of collateral damage.
   
=== httpclient does not flag EOF in last nonempty data packet when reading a file from local CF card ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41885 41885]
|}
problem: When reading a file from a WEB server the httpclient::recv_data() callback indicates the last packet of data by setting packet::code = 1. When reading a file from local CF card packet::code of the last packet is zero as for all other packets. some clients (for example the update process) fail if this (historical) EOF convention is not kept.<br/><br/>solution: fix in code<br/><br/>files: httpclient_i.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== New interoperability option "/take-sendonly-as-inactive" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41886 41886]
|}
Problem: Some SIP phones send SDP offer with "sendonly" and expecting the PBX to play MOH to the remote party. They actually don't want to send no RTP itself although explicitely indicated. MOH is only started by the PBX in case of "inactive".<br/><br/>Solution: New interoperability option "/take-sendonly-as-inactive". With this option set, "sendonly" is handled as "REMOTE-HOLD". Without, it is handled as "HOLD-NOTIFIC".<br/><br/>Files: sip.h/cpp<br/><br/>Products: All SIP devices<br/><br/>Risk: No risk.
   
=== AD Replication Configuration: Enable checkmark not always reflectig persistent config ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41921 41921]
|}
Problem: The enable checkmark was cleared volatile when an error condition was detected within the replication configuration. The admin couldn't see that it was still enabled in the persistent config. <br/><br/>Solution: Auto-Stopping now acts on an own volatile flag instead of on enable flag.<br/><br/>Files: ldap*<br/><br/>Products: PBX, DECT Products<br/><br/>Risk: No risk. <br/>
   
=== Config Template Objects not replicated to slave PBXs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41925 41925]
|}
problem: The node/loc attributes of a Config object were set to 'root' which prohibited replication to slaves with a PBX filter.<br/><br/>solution: Don't set node/loc attributes<br/><br/>files: pbx_edit_config.xsl<br/><br/>products: All with PBX<br/><br/>risks: Could be that setting loc/node to root was good for something
   
=== Partner key without pickup functionality ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=41937 41937]
|}
problem: sometimes it is desirable to have a key to watch the status of a partner and to dial this partner but withour pickup functionality<br/><br/>solution: new partner key flag "Do not pick up an alerting Call"<br/><br/>files: phone_config.cpp, phone_config.h, phone_edit.cpp, app_fkey.cpp, fkey_edit_partner.xsl <br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== IP-DECT Delay on incoming call as a configurable parameter ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42013 42013]
|}
Problem: Delay on incoming call as a configurable parameter is missed.<br/><br/>Solution: Option added.<br/><br/>Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage.
   
=== IP-DECT trunk down events ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42051 42051]
|}
Problem: Diagnose events are missed if trunks are down.<br/><br/>Solution: Diagnose events added.<br/><br/>Files: dectmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: No risk of collateral damage.
   
=== IP-DECT delayed user location registrations for trunks ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42053 42053]
|}
Problem: There must be some delay in sending user location registrations to trunks to prevent CPU overload.<br/><br/>Solution: Function changed.<br/><br/>Files: dectmaster.h, dectmaster.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage. OEM device only.
   
= V7 Hotfix  7 (09-70300.17) =
Changes included in Version 7 hotfix6
[http://mantis.innovaphone.com/view.php?id=42076 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== when transparent recording for external calls was configured, internal calls to voice mail were recorded too ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42180 42180]
|}
problem: the type of an outbound call is not known at the phone until the call is connected. usually the connect message from the PBX provides this info in the numbering plan of the connected party number. in calls to the voice mail  connected party number is not provided and this was misinterpreted as external call.  <br/><br/>solution: assume internal call if connected party number is not provided<br/><br/>files: phonesig.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== v7hf7: Voicemail fails to prompt stored messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42216 42216]
|}
problem: Applies to v7hf6. With the innovaphone voice mail, previously stored messages can´t be listened to any more. Also, the recording based on voice mail does not work any more. <br/><br/>solution: Exclude '/' character from name conversion<br/><br/>files: vm_script_if.cpp<br/><br/>products: All with PBX<br/><br/>risks: <br/>
   
=== checkmark  "Phone/Preferences/Keep Calling Party Info on Pickup Key" cannot be cleared ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42257 42257]
|}
problem: the checkmark could be set but not cleared.<br/><br/>solution: fix in code<br/><br/>files: phone_pref.xsl<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
= V7 Hotfix  8 (09-70300.19) =
Changes included in Version 7 hotfix8
[http://mantis.innovaphone.com/view.php?id=42276 Definition]
 
== New Features ==
 
 
=== Other new Features ===
 
{|
|-
|valign=top nowrap=true|[http://mantis.innovaphone.com/view.php?id=42595 42595]
|valign=top nowrap=true|vsi
|fine grained locking bits for phone-settings and user-list-actions
|}
 
   
== Bug Fixes ==
 
 
   
=== PBX-SOAP: Number update missing for overlap dialing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42116 42116]
|}
problem: On overlap dialing no update was sent to the monitoring application but only later with e.g. Alert. This way the application could not get the original dialed number if a call-forwarding was executed<br/><br/>solution: Send update with each dialed digit (as it was in v6)<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== Suppress Name/Number update after transfer for endpoints calling with CLIR ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42117 42117]
|}
problem: On PBX internal calls with CLIR, the number was presented to the remote party after a call transfer<br/><br/>solution: Suppress ct_complete for CLIR numbers<br/><br/>files: pbx.cpp, pbx.h<br/><br/>products: All with PBX<br/><br/>risks: Small risk of collateral damage
   
=== PBX: Direct call from secretary to exec on slave did not work if call routed thru master ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42142 42142]
|}
problem: On a exec configured on a slave PBX a call from a scretary to the exec could be routed thru the master. This could happen for example if the physical location of the secretary was in fact somewhere else. In this case the call from secretary to master was not allowed.<br/><br/>solution: Check to determin if call is in fact from the secretary fixed<br/><br/>files: pbx_exec.cpp<br/><br/>products: All with PBX<br/><br/>risks: Almost none
   
=== Problems with Number display in PBX config with escapes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42189 42189]
|}
problem: If escapes are configured numbers displayed for the picking up endpoint, the diverted-to endpoint (leg1) and for a number configured with "Send Number" contained escapes, which were not correct<br/><br/>solution: Handle escapes better<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: Some risk that other numbers are not displayed correctly
   
=== PBX: External calls to users with 'Reject external Calls' should be rejeceted with 'Unassigned Number' ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42195 42195]
|}
problem: External calls to PBX objects with 'Reject external calls' were rejected with cause 'Call Rejected' which reveals that the number exists, which may be more then wanted. On the other hand with 'Unassigned Number', the invalid number destination can be used in the trunk object.<br/><br/>solution: Use 'Unassigned Number'<br/><br/>files: pbx.cpp<br/><br/>products: All with PBX<br/><br/>risks: Could be that somebody needs 'Call Rejected' for some reason
   
=== v7hf7: ringing frequency 50Hz instead of 25Hz ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42273 42273]
|}
problem: All analogue gateways unse 50Hz AC fpr ringing signaling. 50Hz is common with conservative FXS designs using relays and AC derived from mains. Nevertheless the correct frequency is 25Hz.<br/><br/>solution: switch over to 25Hz ringing<br/><br/>files: si3210_drv.cpp, si3241_drv.cpp<br/><br/>products: ip22, ip24, ip25, ip302, ip28<br/><br/>risk:
   
=== IP-DECT OEM trap with locations reference ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42280 42280]
|}
Problem: Trap with usage of OEM locations.<br/><br/>Solution: Function changed.<br/><br/>Files: dectmaster_if.h, dectusers.cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: No risk of collateral damage. OEM devices only.
   
=== Take 200 response w/o Contact header for REGISTER as reject ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42414 42414]
|}
problem: Some SIP server reject a failed authorization with "200 Auth Failed" w/o Contact header. This was interpreted as successful registration.<br/><br/>solution: Take it as 'rejected'.<br/><br/>files: sip.cpp<br/><br/>products: All with SIP<br/><br/>risks: No risk.
   
=== Group Indications should show changed remote number ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42420 42420]
|}
problem: New Feature needed: Partner key should not only show the connected number but should also update this number if remote number changes, because of transfer.<br/><br/>solution: Group Indications for the update sent<br/><br/>files: pbx_api.h, pbx.cpp, pbx_gi.cpp, pbx_gi.h, pbx_xml.cpp, pbx_xml.h<br/><br/>products: all with PBX<br/><br/>risks: Risk of collateral damage in the area of Group Indications and SOAP
   
=== IP72: alarms originating from IP72 carry wrong &amp;amp; uninitialized netbios address IP72-00-00-00 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42483 42483]
|}
problem: alarms originating from IP72 carry wrong &amp; uninitialized netbios address IP72-00-00-00<br/><br/>solution: fixed module start order (init_parameters before mac used)<br/><br/>files: config/platform.h<br/><br/>products: IP72<br/><br/>risks: none<br/><br/><br/>
   
=== In the Terminal Capability Set coder g711A shall preceede g711u ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42503 42503]
|}
problem: If a device providing only g711A and g711u (in that sequence) in its TCS connects to our devices the negotiated coder may be either A-law or u-law. In Europe A-law always should be the preferred coder <br/><br/>solution: reorder the coder tables returned by DSP drivers on a get_caps() request.<br/><br/>files: ac_dsp.cpp, ac_dsp2.cpp, ac_dsp3.cpp, omap_dsp.cpp, inca_dsp.cpp <br/><br/>products: all<br/><br/>risks: Minimal<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Pending Recalls are included only in combined call list but not in inbound call list ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42571 42571]
|}
problem: the source of pending recalls indicated on the idle screen could not be determined by simply pressing the R-key and checking the inbound call list. <br/><br/>solution: fix the list item selection mask in R-key handler and call lists menu<br/><br/>files: app_ctl.cpp, phone_list_ui.cpp  <br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00, 08-70300
   
=== Pickup key disappears when a "Short Name (H323ID)" longer than a display line should be displayed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42597 42597]
|}
problem: if "Administration/Phone/Preferences/Display Name on Pickup/Partner Key" is checked, the configured "Short Name (H323ID)" is displayed instead of the Number. a name longer than than a display line was truncated to 0 and thus the key label was not displayed.<br/> <br/>solution: truncate names to size of display line.<br/><br/>files: app_disp.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== IP-DECT New Radio BMC firmware version PCS05Ag ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42626 42626]
|}
Problem: Newer Radio BMC firmware.<br/><br/>Solution: BMC firmware update.<br/><br/>Files: fp_1g8_ip_1200.bin.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Third party firmware.
   
=== reverse name resolution via external LDAP server fails if the number attribute list is terminated by a comma ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42640 42640]
|}
problem: if "Configuration/Registration x/Directories/External LDAP Server/Number Attributes" is configured for example as "telephoneNumber:T,mobile:C,", the trailing comma results in a search pattern whithout an attribute name (=0049...) which confuses the server.<br/> <br/>solution: fix in code<br/><br/>files: phone_dir.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>checked in to 8.00,7.00,08-70300
''Status:''
checked in to 8.00,7.00,08-70300
   
=== memory leak after flash upload of invalid firmware files ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42669 42669]
|}
problem: flash upload of a firmware file < 1000 byte or a larger file with an invalid header left back the complete file in memory.<br/> <br/>solution: fix in code<br/><br/>files: flashman.cpp<br/><br/>products: all<br/><br/>risks: Small risc of collateral damage
''Status:''
checked in to 8.00,7.00,08-70300
   
=== IP-DECT display update after fast blind call transfer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42672 42672]
|}
Problem: Handset display is not updated after blind call transfer in early call state.<br/><br/>Solution: Event handling for early call state added.<br/><br/>Files: dectfty.h, dectfty.cpp, dectmaster.cpp.<br/><br/>Products affected: All DECT devices.<br/><br/>Risk: Low risk of collateral damage.
   
=== Firmware upload fails in ip1201 and ip4001 if a second brower instance gets  the info screen. ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42684 42684]
|}
Problem: Flash access conflict, Firmware upload fails in ip1201 and ip4001 if a second brower instance reads the production_data (e.g. from the info screen).<br/><br/>Solution: use a copy of the production_data<br/><br/>Files: box.cpp.<br/><br/>Products affected: ip4001 ip1201.<br/><br/>Risk: Low risk of collateral damage.
   
=== SOAP UserInfo: User was sometimes displayed as busy, even if free (Collateral damage from #40268) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42789 42789]
|}
problem: SOAP Applications (e.g. innovaphone switchboard) displayed users as busy even after all calls cleared<br/><br/>solution: Send missing status update again<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Very low risk of collateral damage
   
=== H.323 media reneg. from SRTP-EFC to non-EFC does not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42856 42856]
|}
problem: An EFC-SRTP endpoint calls an object with two registrations, first another SRTP-EFC endpoint and second a non-EFC endpoint. With the first endpoint SRTP is negotiated during alert. When the second endpoint answers the call non-SRTP is negotiated, but the calling endpoint still sends SRTP -> no media<br/><br/>solution: Turn off SRTP if renegotiation to non-SRTP happens<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== SIP: From tag changes when re-trying REGISTER with authorization ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42876 42876]
|}
problem: Authorization did not work on "sipXecs/4.0.0 sipXecs/registry (Linux)".<br/><br/>solution: Reuse From tag when resending REGISTER with authorization.<br/><br/>files: sip.cpp/h<br/><br/>products: All with SIP<br/><br/>risks: No risk.
   
=== Redirection from alternate PBX (standby) should not be used to determine physical location ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42916 42916]
|}
problem: If primary PBX is not available and Registration is redirected from alternate, this should not be used as physical location<br/><br/>solution: Do not use alternate reditrection as physical location<br/><br/>files: h323sig.cpp<br/><br/>products: All<br/><br/>risks: Low risk of collateral damage
   
=== IP-DECT OEM trunk facility messages ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=42931 42931]
|}
Problem: Different TCP sessions are needed for different OEM message types.<br/><br/>Solution: Additional trunk signaling object added. Function calls changed.<br/><br/>Files: dtmffty.h, dtmffty.cpp, dectmaster_if.h, dectmaster.h, dectmaster.cpp, dectfty.h, dectfty,cpp.<br/><br/>Products affected: All OEM DECT devices.<br/><br/>Risk: Minimal risk of collateral damage. OEM devices only.
   
=== Failed t38 negotiation in SIP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43056 43056]
|}
problem: Inbound SIP call. Switch-over to t38 from internal to external. After 200/OK with t38 answer from external, the call was terminated with Reason code 88 "Incompatible destination".<br/><br/>solution: Fix handling of CHANNEL_INIT.<br/><br/>files: sip.cpp<br/><br/>products: All with SIP<br/><br/>risks: Damage of other scenarios of media negotiation.
   
=== PBX obtaining licenses from master, wrong counting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43093 43093]
|}
problem: If a PBX object was changed, which was used by a slave which obtained licenses from the master, the usage of this slave was added again to the total usage<br/><br/>solution: Do correct cleanup when changing the configuration of a PBX object<br/><br/>files: pbx.cpp, inno_lic.cpp<br/><br/>products: all with PBX<br/><br/>risks: very low risk of collateral damage
   
=== PBX use cause "outgoing calls barred" for calls rejected because of a filter ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43095 43095]
|}
problem: The cause "no route to destination" was used for calls rejected because of filters. This did not express very well what was going on.<br/><br/>solution: Use "outgoing calls barred" instead<br/><br/>files: pbx.cpp<br/><br/>products: all with pbx<br/><br/>risks: None
   
=== Incoming INVITE is rejected with "603 Decline" ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43121 43121]
|}
problem: SIP stack rejects incoming INVITE with "603 Decline" without telling Gateway application (no LOGs).<br/><br/>solution: On interface selection ignore interfaces not listening.<br/><br/>files: siptrans.cpp<br/><br/>products: All with SIP interfaces without registration<br/><br/>risks: No risk.
   
=== Toggling between active and held call with the R-R (or R-2) key sequence does not work sometimes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43124 43124]
|}
problem: if a phone receives message waiting indications for call completion requests pending for this phone and a call completion is cancelled, the phone thereafter may misinterpret the role of active and held call and thus for example the R-R key sequence toggling between those calls is ignored.<br/><br/>solution: fix in code<br/><br/>files: app_reg.cpp, app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Problem configuring public compact flash access ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43274 43274]
|}
problem: Lots of entries or long paths are truncated.<br/><br/>solution: More buffer space.<br/><br/>files: http.cpp<br/><br/>products: All devices with CF card.<br/><br/>risks: No risk.
   
=== IP3000 Wizard removes /nt config for PRI2 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43292 43292]
|}
problem: On the IP3000 PRI2 interface is preconfigured for NT. By excuting the wizard this configuration is lost<br/><br/>solution: Conserve /nt config on PRI2-L1<br/><br/>files: ip3000/config_wizard.txt<br/><br/>products: IP3000<br/><br/>risks: None
   
=== A registered SIP IF gets CDPN from To-URI (not Request-URI) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43324 43324]
|}
problem: A registered SIP interface gets CDPN from To-URI. Not from Request-URI since Request-URI is always the called UA's Contact-URI used in REGISTER. (But not at provider "voip.planetel.biz")<br/><br/>solution: Config file option "/get-cdpn-from-request-uri".<br/><br/>files: sip.cpp/h<br/><br/>products: All with SIP<br/><br/>risks: No risk.
   
=== Trailing slash not honored when processing unauthorized access list ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43342 43342]
|}
problem: A trailing slash at an entry in "Public compact flash access" was not honored. Entries with a trailing slash shall grant access to the complete sub-tree. Entries without a trailing slash shall not.<br/><br/>solution: Honor trailing slash when checking for unauthorized access.<br/><br/>files: http.cpp<br/><br/>products: All devices with CF card<br/><br/>risks: Damage of CF access.
   
=== src-url not forwarded in pbx and gateway ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43355 43355]
|}
problem: A src-url received as part of the source address was not forwarded by the pbx or the gateway. This caused problems with billing.<br/><br/>solution: forward src-url<br/><br/>files: pbx.cpp, relay.cpp, relay.h<br/><br/>products: all<br/><br/>risks: Minimal
   
=== cf card recognized, but partion table ignored ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43386 43386]
|}
problem: boot sector of a cf card was recognized, but partion table ignored.<br/><br/>solution: firstly check partion table existance and try to validate it<br/><br/>files: fat32.cpp<br/><br/>products: all products with cf card<br/><br/>risks: small chance of unusual boot sectors, which could cause a false cf card recognition
   
=== GWn Interfaces could not be selected as source for automatic generated routes ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43428 43428]
|}
problem: For physical interfaces which are registered, routes are generated automatically. These routes can be modified, e.g. additional source interfaces can be configured. GWx interfaces were excluded from this<br/><br/>solution: Allow GWx interfaces as source as well<br/><br/>files: relay_edit_route.xsl<br/><br/>products: All with Gateway<br/><br/>risks: None
   
=== ISDN interop problem with Cisco Router with unrestricted digital information calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43445 43445]
|}
problem: With ISDN calls from an interface in NT mode a Progress Indicator was sent indicating 'Originating Address is non-ISDN'. This caused a Cisco Router to reject UDI calls (after sending CALL-PROC and ALERT!?)<br/><br/>solution: Do not send this PI in case of UDI calls<br/><br/>files: q931.cpp<br/><br/>products: All with ISDN<br/><br/>risks: Minimal
   
=== Tunneled H.245 not handled while waiting for response to AdmissionRequest ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43509 43509]
|}
problem: If tunneled H.245 where received while the Admission was still pending, no media was negotiated, because these H.245 messages where ignored.<br/><br/>solition: Handle Tunneled H.245 in this state<br/><br/>files: h323_tbl.tbl<br/><br/>products: all<br/><br/>risks: minor risk of collateral damage
   
=== "phys" attribute ignored for partial replication to slave ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43623 43623]
|}
problem: LDAP objects with attribute "phys" and content "[pbx]", where "[pbx]" equals Configuration/LDAP/Replicator/PBX-Name, weren't replicated to the slave.<br/><br/>solution: Internally derived LDAP filter now contains a term for the "phys" attribute.<br/><br/>files: ldaprep.cpp<br/><br/>products: all PBX products<br/><br/>risks: none
   
=== SOAP UserConnect to a phone with a held and an alerting call does not retrieve the held call but opens the call completion menu ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43797 43797]
|}
problem: <br/>- A calls B, B answers the call<br/>- A presses the R-key and calls C, C does not answer.<br/>- a UserConnect directed to the held call (A to B) disconnects the alerting call (A to C) but instead to retrieve the held call the call completion menu is openend.<br/><br/>solution: fix in code<br/><br/>files: app_ctl.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300,08-60900 <br/>
   
=== tftp access with httpclient fails on some tftp servers if the file path starts with a / ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43830 43830]
|}
Problem: tftp access with httpclient fails on some tftp servers if the file path starts with a /<br/><br/>Solution: remove starting /<br/><br/>Files: httpclient_i.cpp.<br/><br/>Products affected: all.<br/><br/>Risk: Low risk of collateral damage, starting / has no functio with tftp
   
=== Permanent reboot after hardware reset with fixed IP address due to Watchdog Timer. ===
 
{|
|Status
|<font><font color="orange">To-decide</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=43953 43953]
|}
Timer registers are null after a hardware reset and the Watchdog Timer runs out. The problem is that the interrupts are enabled just before the timers <br/>are set. Some interrupts arrive and to serve them takes longer than 2 seconds.<br/>When DHCP is used the PBX will be started later and not during this critical period and after a software reset the timer registers are not resetted and therefore the watchdog timer is triggered.<br/><br/>Solution: Init the Timer Registers before the Interrupts are enabled.<br/><br/>files: ip6000.cpp
   
=== IP-DECT option check called party number in Dectmaster ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=44074 44074]
|}
problem: For some system configurations it is necessary to reject calls if the called party number doesn't match with the number of the assigned user of the used PBX registration.<br/><br/>solution: New option to check the called party number for OEM devices.<br/><br/>files: dectmaster.h, dectmaster.cpp.<br/><br/>products affected: All OEM DECT devices.<br/><br/>risk: No risk of collateral damage. OEM devices only.
   
= V7 Hotfix10 (09-70300.21) =
Changes included in Version 7 hotfix10
[http://mantis.innovaphone.com/view.php?id=45787 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== SIP endpoint remains on hold after transfer (e.g. Bria) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=45856 45856]
|}
problem: Under special timing conditions a SIP endpoint may remain on hold after transfer. Not switched from "sendonly" back to "sendrecv". Too fast hold/retrieve by PBX.<br/><br/>solution: Postpone retrieve event until SIP endpoint is ready to receive another re-INVITE.<br/><br/>files: sip.cpp<br/><br/>products: PBX serving SIP devices<br/><br/>risks: No risk
   
=== IP-DECT OEM LDAP timing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=45863 45863]
|}
problem: Deleting of a duplicate endpoint takes too long if we wait for the LDAP response.<br/><br/>solution: System update before the LDAP response is added.<br/><br/>files: dectusers.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== Disconnect of incoming SIP call fails if ACK was not received yet ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=45883 45883]
|}
problem: Disconnect of incoming SIP call fails if ACK was not received yet. No BYE was send.<br/><br/>solution: Send BYE even before ACK is received.<br/><br/>files: sip.cpp<br/><br/>products: SIP devices<br/><br/>risks: No risk
   
=== Problem with configuration of compact flash access ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=45900 45900]
|}
problem: Non-recursive directory access (w/o trailing slash) does not work. Directory listing is possible. File access is not possible.<br/><br/>solution: Fix access check.<br/><br/>files: http.cpp<br/><br/>products: All devices with CF card<br/><br/>risks: No risk
   
= V7 Hotfix11 (09-70300.22) =
Changes included in Version 7 hotfix11
[http://mantis.innovaphone.com/view.php?id=46660 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== IP-DECT: Not possible to initiate Call Completion if PBX user monitored by SOAP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=45940 45940]
|}
problem: If a PBX user is monitored with SOAP (cau=true). A call is disconnected with DISC first and the REL. This caused the IP-DECT to disconnect the call to the handset too early, so no CC could be initiated<br/><br/>solution: Don't clear call from Master to Radio with the REL coming in from PBX<br/><br/>files: dtmffty.cpp<br/><br/>products: IP-DECT, Gateways<br/><br/>risks: Minimal
   
=== PBX: CFU Loop was detected, even if CFU was disabled by boolean ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46139 46139]
|}
problem: The PBX detected CFU loops, even if a CFU was disabled by a boolean object.<br/><br/>solution: Take boolean into account when checking for loops<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal
   
=== IP-DECT registration down reasons ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46189 46189]
|}
problem: It is not possible to distinguish the reason why the radio-master connection fails.<br/><br/>solution: Now the master submits a reason in the ras down message and it is shown on the DECT radio GUI.<br/><br/>files: h323ras.cpp, voip.cpp, asn1_per.cpp, dectusers_if.h, dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectradio.xsl, dectradio.xsl(OEM).<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.<br/>
   
=== PBX Broadcast Conference and CFNR ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46192 46192]
|}
problem: The no-response timer is not stopped if a PBX user is called by the broadcast conference object.<br/><br/>solution: Timer handling fixed.<br/><br/>files: pbx.h, pbx.cpp.<br/><br/>products affected: All devices with PBX.<br/><br/>risk: Minimal risk of collateral damage.
   
=== IP-DECT OEM Network region roaming ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46268 46268]
|}
problem: New feature roaming between network regions for OEM products.<br/><br/>solution: Functionality added.<br/><br/>files: dectusers_if.h, dectusers.h, dectusers.cpp, dectmaster.h, dectmaster.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only relevant for OEM products.
   
=== Force HTTPS with non-standard ports ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46271 46271]
|}
Problem: The HTTP redirect URI that is used for the "force HTTPS"-Feature does not include the HTTPS port number. Therefore it doesn't work if the HTTP or HTTPS port have been changed.<br/><br/>Solution: Include port number in HTTP redirect if one of the ports has been changed by the user.<br/><br/>Files: http.cpp<br/><br/>Products affected: All devices<br/><br/>Risk: Minimal
   
=== IP72: not transmitting continous timestamps in RTP data ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46281 46281]
|}
problem: not transmitting continous timestamps in RTP data. Approx. the 10th RTP packet resets the timestamp to -1.<br/> <br/>solution: fixed in DSP code.<br/><br/>files: box/omap/omap_dsp.cpp box/omap/omap_dsp.h<br/><br/>products: IP72<br/><br/>risks: none known<br/><br/><br/>
   
=== HTML directory listing contains bad links ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46367 46367]
|}
problem: In an HTML directory listing a link to a file who's name contains # (hash) does not work.<br/><br/>solution: Character escaping on links in HTML directory listings.<br/><br/>files: servlet_webdav.cpp<br/><br/>products: All devices with CF card<br/><br/>risks: No risk
   
=== Configured ENUM Suffix got lost ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46439 46439]
|}
problem: If for a ENUM GW a Suffix was configured (by use of !config change) it was deleted the next time the interface was edited<br/><br/>solution: Preserve suffix<br/><br/>files: gk.cpp, gk.h, relay_edit_voip.xsl<br/><br/>products: All gateway products<br/><br/>risks: Minimal
   
=== Trap in SIP stack when processing REGISTER response ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46448 46448]
|}
problem: A trap may occur when handling REGISTER response.<br/><br/>solution: Fix.<br/><br/>files: sip.cpp<br/><br/>products: All SIP devices<br/><br/>risks: No risk
   
=== H.323 Wrong Unexpected Message events ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46450 46450]
|}
problem: The H.323 sometimes generates wrong Unexpecetd Message events.<br/><br/>solution: Disable Unexpected message events<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== New flash memory on IP200A/IP230/IP240 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46452 46452]
|}
problem: Spansion S29AL032D50TFN00 Flash pin 12 is the ready output and not the write protect input, so P1.16 must no be a output <br/><br/>solution: Fix.<br/><br/>files: flash.c platform_inca.c<br/><br/>products: IP200A/IP230/IP240<br/>risks: Low risk
   
=== H.323: SRTP key was not forwarded to the caller in case of PBX to PBX calls with renegotiation ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46461 46461]
|}
problem: On SRTP PBX to PBX calls with the call connected to some other media endpoint first (e.g. dialtone), the key was not forwarded to the caller. This caused garbled audio<br/><br/>solution: Forward SRTP key<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risk: Small risk of other media problem with SRTP
   
=== IP-DECT OEM protocol DTMF through RTP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46478 46478]
|}
problem: For OEM protocol option 'allow DTMF through RTP' should be always off.<br/><br/>solution: Configuration update function fixed.<br/><br/>files: dectmaster.cpp, dectmaster.xsl.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.
   
=== IP150 stays logically offhook after a call initiated via WEB interface has been released ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46483 46483]
|}
problem: calls created/accepted via WEB interface on an IP150 are started in handset mode because the IP150 has no speakerphone. The logical offhook state was not reset when such a call was released<br/><br/>solution: flag calls created/accepted via WEB interface and set logical onhook after release of such call<br/><br/>files: app_ctl.h, app_ctl.cpp, app_call.cpp<br/><br/>products: IP150<br/><br/>risks: None
   
=== H.323 Call to Waiting Queue with CFNR to another Waiting Queue with SIP Operator result in no media ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46484 46484]
|}
problem: The media renegotiation of the H.323 call to the announcement with the SIP reverse media call to the operator fails<br/><br/>solution: Fix media-reneg. in H.323<br/><br/>files: channel.h, h323ch.cpp<br/><br/>products: all<br/><br/>risks: Minimal risk with media neg.
   
=== Counters display does not work with IE8 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46508 46508]
|}
problem: IE8 don't like img element without src attribute.<br/><br/>solution: replace <img> by <div><br/><br/>files: log_count.xsl<br/><br/>products: All devices<br/><br/>risks: No risk
   
=== phone may trap on late LDAP directory search result ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46511 46511]
|}
problem: a search result arriving after the call object has been deleted may cause a trap (collateral damage of #45166)<br/><br/>solution: check for presence of call object<br/> <br/>files: app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
Additional Information \tchecked in to 8.00,7.00,08-70300
   
=== Ringback missing with two-stage dialing thru PBX waiting to public network ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46527 46527]
|}
problem: If thru waiting a destination is called which provides in-band ringback, this ringback was not connected to the caller, but a local ringback was not generated as well.<br/><br/>solution: Generate local ringback<br/><br/>files: pbx_wait.cpp<br/><br/>products: all with PBX<br/><br/>risks: Minimal. Fix can only affect exactly this case.
   
=== Media Recording generated small files even if no media was received ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46532 46532]
|}
problem: On an analog interface with media recording a file was generated just by going off-hook on the phone<br/><br/>solution: Generate file only if media connection was established<br/><br/>files: media.cpp, media.h<br/><br/>products: all<br/><br/>risks: Minimal
   
=== inband info received after disconnect of a connected call was lost in handsfree/headset mode because of automatic release ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46545 46545]
|}
problem: some ISDN providers send inband info after disconnect even when the call was connected before. This info was lost in handsfree/headset mode because of automatic release after 2 seconds.<br/><br/>solution: on a disconnect with inband info the call is not automatically released. The call is terminated only on user request or when a release is received.<br/> <br/>files: app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== a ringing call moved by up-arrow key to upper display position disappeared when the active call was disconnected ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46582 46582]
|}
problem: a ringing call which was moved to an upper display position by pressing the up-arrow key disappeared when the active call was disconnected. On a local disconnect the ringing call was invisible but remained pending in ringing state until released from remote. On a remote disconnect the ringing call was dropped.<br/><br/>solution: On a local disconnect the phone rings immediately. On a remote disconnect the phone rings after going on hook. <br/> <br/>files: app_ctl.cpp, app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== IP-DECT OEM protocol new events ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46601 46601]
|}
problem: New events are needed for OEM protocol.<br/><br/>solution: Events added.<br/><br/>files: fty.h, fty.cpp.<br/><br/>products affected: All devices.<br/><br/>risk: No risk of collateral damage. New events only for the OEM protocol.
   
=== IP-DECT Sometimes user login fails ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46624 46624]
|}
problem: Sometimes user login fails.<br/><br/>solution: CDPN buffer handling fixed.<br/><br/>files: dectusers.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== Unsolicity NOTIFY(simple-message-summary) rejected with 481 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46631 46631]
|}
problem: Request-URI of NOTIFY contains local AOR (not local Contact-URI).<br/><br/>solution: Check Request-URI against local AOR, not only against local Contact-URI.<br/><br/>files: siptrans.cpp<br/><br/>products: All SIP devices<br/><br/>risks: No risk
   
= V7 Hotfix12 (09-70300.23) =
Changes included in Version 7 hotfix12
[http://mantis.innovaphone.com/view.php?id=46661 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== phone must propagate error logs from call object to logging service ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46570 46570]
|}
problem: error logs from call object sent to the phone registration object are not propagated to the logging service. <br/><br/>solution: fix in code<br/> <br/>files: phonesig.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== If a call-completion was initiated the callback number was wrong in some cases ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46662 46662]
|}
problem: The number sent with MWI to the called phone indicating a callback request, was not correctly adjusted taking nodes and escapes into account<br/><br/>solution: Adjust number<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== IP-DECT OEM Standby master capabilities ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46678 46678]
|}
problem: It should not be possible for OEM devices to delete anonymous endpoints or to edit users if the standby master is active and used.<br/><br/>solution: Control functions and OEM GUI changed. Display message types added.<br/><br/>files: dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectdisplay_if.h, dectdisplay.h (OEM), dectdisplay.cpp (OEM), dect_users_left.xsl (OEM), dect_users_right.xsl (OEM).<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== Recall to user not in root node did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46690 46690]
|}
problem: A recall after transfer to a user not in root node did not work, if call from another Node. If call from same node, number display was wrong<br/><br/>solution: Take node into account when root recall<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risk: Risk of collateral damage limited to recall
   
=== update 'scfg' command may hang if target url is invalid (non existent host or host rejects connect) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46716 46716]
|}
problem: update 'scfg' command hangs if the target url is invalid and the HTTP-PUT operation is terminated when no other operation is pending. In this case the termination of 'scfg' was not reported from UP0 to the script process UP1  <br/><br/>solution: fix in code<br/> <br/>files: update.cpp<br/><br/>products: all<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== When the phone speaker volume is changed  the micro must stay disabled if it was disabled before ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46788 46788]
|}
problem: When the phone speaker volume was changed while the micro was disabled the micro was enabled but displayed as disabled. Naturally the micro must stay disabled here.<br/><br/>solution: fix in code<br/> <br/>files: phonesig.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== H323 OEM event decoding ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46931 46931]
|}
problem: For an OEM protocol some event content items are missed in the signaling information event.<br/><br/>solution: Event action fixed.<br/><br/>files: h323_tbl.tbl.<br/><br/>products affected: All devices.<br/><br/>risk: No risk of collateral damage. Only relevant for OEM protocol.
   
=== SIP: "300 Multiple Choices" was not handled ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46938 46938]
|}
Problem: SIP response "300 Multiple Choices" for INVITE was not handled.<br/><br/>Solution: Re-send INVITE with replace Request-URI.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All SIP devices.<br/><br/>Risk: No risk.
   
=== SIP: Assignment of incoming calls to signaling interface fails ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=46939 46939]
|}
Problem: INVITE is rejected with "403 Forbidden" if Request-URI does not match local Contact-URI.<br/><br/>Solution: Do not require URI match, if only one signaling interface on local recv port.<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: Devices with registered SIP interfaces (phones/gateways).<br/><br/>Risk: No risk.
   
=== SIP interop: SAGEM fax server fails to receive t38 fax ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47085 47085]
|}
Problem: SAGEM fax server gets initial SDP offer with audio (non-zero port) and t38 (zero port) and accepts with audio (zero port) and t38 (non-zero port).<br/><br/>Solution: Config option to select t38 capability indication. Use "/t38-cap 1" or "/t38-cap 2" for SAGEM.<br/><br/>Files: sip.cpp/h sdpmsg.cpp/h<br/><br/>Products affected: SIP gateways<br/><br/>Risk: No risk.
   
=== Trap when adding a group to a pbx dtmf child object ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47104 47104]
|}
problem: the box traps, when a group is added to a pbx dtmf child object, which shouldn't be configurable.<br/><br/>solution: remove configuration possibility of child objects.<br/><br/>files: pbx_obj_rights.xsl<br/><br/>products affected: All pbx devices.<br/><br/>risk: none
   
=== IP-DECT registration down reason text ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47121 47121]
|}
problem: New description for the registration down reason is needed.<br/><br/>solution: Reason text changed.<br/><br/>files: dectusers.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only description.
   
=== permit to search external directory for local numbers ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47151 47151]
|}
problem: special application environments require to hide the PBX provided name-id via "config add PHONE SIG /no-name-id". If in this case the external directory is used to provide name info for local numbers it is searched only if the 'Dialing Location/External Line' prefix is empty.<br/><br/>solution: "config add PHONE DIR /dont-skip-ext" forces the external directory to be searched local numbers (not starting with the 'External Line' prefix) too.<br/> <br/>files: phone_dir.cpp<br/><br/>products: all phones<br/><br/>risks: None
''Status:''
checked in to 8.00,7.00,08-70300
   
=== IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes ===
 
{|
|Status
|<font><font color="green">Resolved</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47161 47161]
|}
problem: IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes <br/><br/>solution: Fix.<br/><br/>files: startup_ixp245.s, boot2000.y<br/><br/>products: IP2000<br/>risks: The first 16 IP2000 ( Mac-Address < 00-90-33-24-00-10 ) with 64Mbyte die with this bootcode
   
=== ISDN interop flag "No-Disc" used to change handling of incoming DISC as well ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47210 47210]
|}
problem: The No-Disc interop flag only resulted in no DISC being sent, but RELEASE instead. Symmetric behaviour would be desired.<br/><br/>solution: With No-Disc set a RELEASE message is sent immediatly when a DISC is received<br/><br/>files: q931.cpp<br/><br/>products: All with ISDN<br/><br/>risks: None
   
=== PBX trap when adding many groups to a object ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47243 47243]
|}
problem: A buffer overrun happened if too many groups were added to a object<br/><br/>solution: Check for buffer overrun added. Buffer doubled to avoid limitation<br/><br/>files: pbx.cpp, pbx.h<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== SIP: No ACK is sent ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47252 47252]
|}
Problem: If a call receives lots of provisional responses (20 or more), SIP may fail to send ACK and "ERROR: SIP message buffer (2049) exceeded!" appears in trace.<br/><br/>Solution: Check if a new provisional response really updates anything (e.g. tag).<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: SIP gateways<br/><br/>Risk: No risk.
   
=== don't report a sent() callback in a HTTP GET operation as an error ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47254 47254]
|}
problem: on a HTTP GET operation the httpclient object triggers a sent() callback when the GET request data has been sent. This is not error and thus should not be traced <br/><br/>solution: fix in code<br/> <br/>files: update.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Gateway: Trap if too many maps configured at an interface ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47267 47267]
|}
problem: A buffer overrun happened when many maps at an interaface were configured<br/><br/>solution: Do not use a static buffer, but a packet instead<br/><br/>files: gk.cpp<br/><br/>products: all gateways<br/><br/>risks: None
   
=== sporadic HTTP_REQUEST Assertion ===
 
{|
|Status
|<font><font color="green">Resolved</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47348 47348]
|}
problem: HTTP_REQUEST assertion due to large alloc size after send_responses during idle state<br/><br/>solution: cleanup http session after responses, debugs added<br/>files: http.h, http.cpp<br/><br/>products: all<br/><br/>risks: Low risk of collateral damage
   
=== Feature code local clear of MWI ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47372 47372]
|}
problem: The feature code local clear of MWI should be transparent to the call instead of closing it.<br/><br/>solution: Sending disconnect message removed.<br/><br/>files: dtmffty.cpp.<br/><br/>products affected: All devices with supplementary services.<br/><br/>risk: Minimal risk of collateral damage.
   
=== IP-DECT OEM protocol DTMF as keypad ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47395 47395]
|}
problem: For OEM protocol option 'DTMF as keypad' should be always on.<br/><br/>solution: Configuration update function fixed.<br/><br/>files: dectmaster.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.
   
=== Trap on dialing directory search object with http and full number including # to connect ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47403 47403]
|}
problem: class directory_search_call_http deleted twice<br/><br/>solution: prevent double deletion<br/><br/>files: pbx_dirsearch.cpp<br/><br/>products affected: all PBX devices<br/><br/>risk: No risk of collateral damage, as the fix is just valid for directory search calls with a http server
   
=== IP24, IP28, IP302, IP305 dsp did not support renegotiation from PCM to VOIP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47494 47494]
|}
problem: If a call was established first with a direct PCM connection and then switched over to a normal VOIP call, there was no media. This could happen with calls from ISDN to a endpoint with a lokal analog interface (first reg) and a IP Phone (second reg) registered. The media with the local analog interface was established first, when the call was answered on the IP phone, the renegotiation happend.<br/><br/>solution: fix dsp driver<br/><br/>files: ac_dsp3.cpp, ac_dsp3.h<br/><br/>products: IP24, IP28, IP302, IP305<br/><br/>risks: other media problems with DSP
   
=== IP6000/2000 trap handler must be run on common stack to prevent false alarms in post mortem memory diagnostics ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47501 47501]
|}
problem: the trap handler was run on a fixed stack below the stack area used in normal operations and in interrupt handling. this way some allocated memory could be overriden and a false alarm could be raised by the memory sanity checks at the end of trap handling <br/><br/>solution: fix in code<br/> <br/>files: startup.S, ip6000.cpp<br/><br/>products: ip6000,ip2000<br/><br/>risks: None<br/>
''Status:''
checked in to 8.00,7.00,08-70300
   
=== Trap on SIP call clearing ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47511 47511]
|}
Problem: Trap on SIP call clearing.<br/><br/>Solution: Fix double delete of call object.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk.
   
=== Quickdial, Incorrect Display for Umlaute ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47512 47512]
|}
Problem: Quickdial, Incorrect Display for Umlaute.<br/><br/>Solution: UTF-8 decode display info<br/><br/>Files: pbx_qdial.cpp<br/><br/>Products affected: PBX products<br/><br/>Risk: No risk.
   
=== IP-DECT OEM Network region roaming user attribute ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47513 47513]
|}
problem: The user attribute for the new feature 'roaming between network regions' is deleted if the user data is changed over the GUI.<br/><br/>solution: User attribute added in the OEM GUI and forwarded to the LDAP query.<br/><br/>files: dectusers.h, dectusers.cpp, dect_edit_user.xsl (OEM).<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only relevant for OEM products.
   
=== Wrong DTMF when dialing DTMF feature codes from analog devices ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47516 47516]
|}
problem: on channel connect, a DTMF can be send twice<br/><br/>solution: do not connect for feature codes, when not needed<br/><br/>files: pbx_dtmf.h, pbx_dtmf.cpp<br/><br/>products affected: all PBX devices<br/><br/>risk: No risk of collateral damage, as the fix is just valid for dtmf feature codes
   
=== IP-DECT OEM location update during handover ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47519 47519]
|}
problem: A new setup message from a radio should not trigger a OEM location update during handover state.<br/><br/>solution: Condition added.<br/><br/>files: dectmaster.h, dectmaster.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage. Only relevant for OEM products.
   
=== SIP: Missing request re-transmission after 100/Trying ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47573 47573]
|}
Problem: A non-INVITE request (e.g. REGISTER) was not re-transmitted after 100/Trying has been received. A lost final response caused a transaction timeout.<br/><br/>Solution: Do not stop Timer E when entering transaction state "Proceeding".<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: All SIP devices<br/><br/>Risk: No risk.
   
=== incorrect pointer assignment in submit_config of dtmf/icp object and false configuration possibility ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47715 47715]
|}
problem: a) local buffer assigned to a given pointer<br/>        b) it was possible to configure just one of two needed e164 and if configured just one (which makes sense for pickup), the code was not correctly shown as enabled in configuration window.<br/><br/>solution: fix in code<br/> <br/>files: pbx_dtmf.h, pbx_dtmf.cpp, pbx_edit_dtmf-ctrl.xsl, pbx_icp.cpp<br/><br/>products: all pbx products<br/><br/>risks: None
   
=== IP22 Interop with devices that do not support T38 redundancy and retransmits ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47772 47772]
|}
problem: Some fax gateways (e.g. old avaya equipment) do not accept T.38 packet with redundancy or do no accept resent packets with the same sequence number<br/><br/>solution: DSP config added, use http://addr/AC-DSP0/info.xml?xsl=dsp.xsl to edit the settings.<br/><br/>files: ac_dsp3.cpp ac_dsp3.h ac_dsp3.mak dsp.xsl<br/>products: IP2x IP30x<br/>risks: Low
   
=== permit to control the display format of names from local/PBX directory the same way as for external directories ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47784 47784]
|}
problem: some users want to control the name display format for inbound and outbound calls separately and to reorder/omit parts of a name. this already works for external directories but names from local or PBX directory were not displayed if the first name attribute was not configured for display because such names have only one, the 'cn' attribute.<br/><br/>solution: by default the full 'cn' is displayed for entries from local or PBX directory. if the format string starts with an asterisk ('*') 'cn' is tokenized and the tokens are ordered according to the requested format.<br/>  config add PHONE APP /name-display-in <format-in> /name-display-out <format-out>"<br/>'format-...' selects the name attributes to be displayed and their order.<br/>The default format is "123", i.e. all names are displayed as configured.<br/>"3" displays only the third attribute of a name from an external directory but the complete 'cn' from local or PBX directory.<br/>"*3" displays only the third attribute of a name from an external directory and only the third token (if any) of a 'cn' from local or PBX directory.<br/> <br/>files: app_call.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
7.00,08-70300
   
=== malloc must always run disabled ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47792 47792]
|}
problem: usually malloc is called only from disabled state. in some extremely rare cases (for example before a DRAM upload) it is called from enabled state and then an interrupt may cause assignment of the same memory chunk to different callers.<br/> <br/>solution: fix in code<br/> <br/>files: os.cpp<br/><br/>products: all products<br/><br/>risks: None
''Status:''
checked in to 7.00,08-70300
   
=== prevent creation of pbx dtmf object with char '#' in long name ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47803 47803]
|}
problem: it was possible to create a dtmf object with long name dtmf#join_group. If one then creates another dtmf object with long name dtmf and feature code join group enabled, it traps, because the object tries to create another user with dtmf#join_group as long name without check.<br/><br/>solution: disallow char '#' in long name of dtmf object<br/> <br/>files: pbx_dtmf.cpp<br/><br/>products: all pbx devices<br/><br/>risks: None
   
=== provide uptime and local time of trap in debug log ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47854 47854]
|}
problem: sometimes it's helpful to know at which time of day and how long after boot a trap occured<br/><br/>solution: fix in code<br/> <br/>files: box.cpp, arm.cpp<br/><br/>products: all<br/><br/>risks: None<br/>
''Status:''
checked in to 7.00, 08-70300
   
=== MWI configuration options ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47884 47884]
|}
problem: It should be possible to configure different numbers for the notify and interrogate number.<br/><br/>solution: New configuration option implemented.<br/><br/>files: dtmffty.h, dtmffty.cpp, dectfty.h, dectfty.cpp, dectfty.xsl(OEM).<br/><br/>products affected: All devices with DECT or PBX.<br/><br/>risk: Minimal risk of collateral damage.
   
=== PBX Broadcast Conference Option ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47885 47885]
|}
problem: It should be possible to configure if the last remaining user in a conference call should be disconnected or not.<br/><br/>solution: New configuration option implemented.<br/><br/>files: pbx_bc_conf.h, pbx_bc_conf.cpp, pbx_edit_bc_conf.xsl.<br/><br/>products affected: All devices with PBX.<br/><br/>risk: Minimal risk of collateral damage.
   
=== IP-DECT idle display update ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47890 47890]
|}
problem: Idle display update does not work for DECT handsets.<br/><br/>solution: Functionality implemented, but it must be enabled over the GUI and must not be used if foreign handsets are used.<br/><br/>files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== SIP: Handling of transfer to different ip address ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47917 47917]
|}
Problem: MS Exchange transfers fax calls to external fax servers with REFER.<br/><br/>Solution: Follow this transfer and send new INVITE to destination address.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk
   
=== IP-DECT OEM module software update ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47933 47933]
|}
problem: There are new software versions of the OEM software modules: BMC interface software, MSF module and Skinny protocol.<br/><br/>solution: OEM modules replaced.<br/><br/>files: DECT files, MSF files, Skinny files, config.h, fty.h, fty.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Normal risk of collateral damage. Updated from improved OEM branch.
   
=== SIP: Problem with media negotiation after 488 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=47957 47957]
|}
Problem: After re-INVITE client transaction was rejected (e.g. 488) the next re-INVITE was not send. May result in one-way-audio.<br/><br/>Solution: Cleanup when handling reject for re-INVITE.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk
   
= V7 Hotfix13 (10-70300.24) =
Changes included in Version 7 hotfix13
[http://mantis.innovaphone.com/view.php?id=48495 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== SIP: Media negotiation problem at Alcatel Omni PCX ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48339 48339]
|}
Problem: Several provisional responses with changing remote RTP addresses may cause RTP to be sent to wrong destination.<br/><br/>Solution: Fix handling of updated SDP answers.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk.
   
=== SIP: No switch from local ringback tone to inband ringback tone ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48427 48427]
|}
Problem: No switch from local ringback tone to inband ringback tone, because 183/Progress response was not handled after 180/Ringing.<br/><br/>Solution: Handle 183 after 180.<br/><br/>Files: sipstate.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk.
   
=== SIP: Problems with DTMF when interworking v5 devices to SIP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48440 48440]
|}
Problem: A call initiated by a v5 device that is interworked to SIP may have problems with DTMF.<br/><br/>Solution: Send SDP offer in INVITE as one single media description.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP gateway and PBXs<br/><br/>Risk: No risk.
   
=== VM: Trap, Double-Free after sending Email with Body ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48498 48498]
|}
problem: VM, trap, double free after sending email with body<br/><br/>solution: don't send such emails or apply fix<br/> <br/>files: smtp_mta.cpp<br/><br/>products: all pbx devices<br/><br/>risks: None
   
=== One-way-voice after retrieve together with SRTP, H323 and Registration with password ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48572 48572]
|}
problem: One-way-voice could happen after retrieve, if SRTP is used on H.323 call, which uses a refistration with password. This could also happen when switching to a 3-pty conference (retrieve done on one leg). This is caused by an unencrypted SRTP key sent with the media renegotiation.<br/><br/>solution: Do encryption of the SRTP key.<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: Collateral damage with media negotiation
   
=== Call-Completion display at called phone not deleted if calling/called in same but not root node ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48579 48579]
|}
problem: The Call-Completion waiting display at called endpoint was not deleted after execution of call completion if calling and called endpoint in same but not root node. The mwiDeactivate used to deleted the display contained the wrong number. In a previous fix the mwiActivate which was also wrong was fixed, so before this fix it worked, because both contained the same wrong number<br/><br/>solution: Fix number in mwiDeactivate<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== PBX: Trap if corrupt CF in flash ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48584 48584]
|}
problem: If somehow an invalid call-forward config ends up in flashdir, the PBX enters a boot-loop<br/><br/>solution: Handle invalid call-forward configs<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: none
   
=== Gateway Routing Table: Routing a call to a Gatekeeper registration using Name Out did not work anymore ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48609 48609]
|}
problem: When Name Out in a route was used to address a Gatekeeper registration this Name Out was sent with the call. This prohibited further routing of the call on the receiving side with overlap sending.<br/><br/>solution: Do not send Name Out with call if the name is used to identify Gatekeeper reg.<br/><br/>files: relay.cpp<br/><br/>products: all Gateway products<br/><br/>risks: Small risk that this name needs to be transmited for some special configurations
   
=== Missing normalization of received diverting leg info ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48625 48625]
|}
problem: A diverting leg info received on a trunk or gateway object must be normalized to the PBX internal representation (number from root with all prefixes but without escapes) to be displayed correctly when sent to an endpoint. This normalization was missing.<br/><br/>solution: Normalization added.<br/><br/>files: pbx.cpp, pbx.h, pbx_api.h<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== PBX: Trap when receiving Facility during disconnect ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48626 48626]
|}
problem: A trap could happen in case of a collision of Facility and Call Clearing, with very special timing, because of an attempt to send a facility on an already deleted call.<br/><br/>solution: Better check for deleted call.<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== allow empty search base in directory search object ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48702 48702]
|}
problem: ldap server needs an empty search base, but the directory search object doesn't allow an empty one<br/><br/>solution: disable check for empty search base<br/> <br/>files: pbx_dirsearch.cpp<br/><br/>products: all pbx devices<br/><br/>risks: None
   
=== Memory Leak ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48715 48715]
|}
Problem: Lost memory every time a registered SIP interface is deactivated.<br/><br/>Solution: Free allocated memory for authentication data.<br/><br/>Files: sip.cpp<br/><br/>Products affected: SIP endpoints<br/><br/>Risk: No risk.
   
=== PBX: As diverting number the real number was sent even if Send Number configured ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48719 48719]
|}
problem: The 'Send Number' should be sent as diverting number if configured<br/><br/>solution: Send 'Send Number' as diverting number if configured<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== PBX: Reject external calls did not work as desired together with call forward ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48728 48728]
|}
problem: An endpoint with 'Reject Ext. Calls' set should not be able to forward external calls. An external call forwarded to an endpoint with 'Reject Ext. Calls' set should succeed.<br/><br/>solution: fixed<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: Could be that the old behaviour was desired in some installations
   
=== IP240-1000 - network connectivity lost  after restart of the physical layer controller because of spurious errors ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48786 48786]
|}
problem: the physical layer controller (PHY) of an IP240-100 is checked for spurious errors any second. If such errors are detected the controller is restarted. After restart data transfer from the phone CPU to the network was blocked. Data reception from network and transfer between LAN and PC port did work.<br/><br/>solution: fix in code<br/> <br/>files: inca_drv.cpp<br/><br/>products: IP 240-1000<br/><br/>risks: None<br/>
''Status:''
checked in to 7.00,08-70300
   
=== Leaks with DECT signalling using TLS ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48821 48821]
|}
Problem: Sometimes the TLS sockets that are used by DECT signalling are not deleted because of a shutdown event collision in the TLS socket<br/><br/>Solution: Fix TLS shutdown flow<br/><br/>Files: tls.cpp, tls.h<br/><br/>Risk: Collateral damage with other applications using TLS
   
=== Potential trap when reconfiguring Gateway interfaces ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48834 48834]
|}
problem: If a gateway interface is reconfigured while calls are active a trap could happen later on.<br/><br/>solution: Better handling of reconfiguration<br/><br/>files: signal.cpp, signal.h<br/><br/>products: all<br/><br/>risks: none
   
=== Gateway: Trap if reconfiguring an analog interface registration with Feature Code support ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48839 48839]
|}
problem: If the reegistration configuration of an analog interface (e.g. changing registration name/no) was changed a trap happened when the registration was up again. Happened only with enabled Feature Codes.<br/><br/>solution: Better handling of reconfiguration<br/><br/>files: dtmffty.cpp, gk.cpp, relayfty.cpp, relayfty.h, relayfty_if.h<br/><br/>products: all with analog interfaces<br/><br/>risks: Minimal
   
=== IP-DECT facility entity memory leak ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48851 48851]
|}
problem: Facility entity objects aren't deleted in rare situations.<br/><br/>solution: Facility entity delete function call fixed.<br/><br/>files: dectmaster.cpp, dectradio.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== Master PBX to obtain licenses from another Master ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=48939 48939]
|}
problem: There are configurations in which centralized licensing is desired but otherwise independent Master PBXs are needed.<br/><br/>solution: Configuration option added to allow a slave to register at a master to obtain licenses, but act as master in all other respects<br/><br/>files: pbx.cpp, pbx.h, pbx_general.xsl<br/><br/>products: all with PBX<br/><br/>risks: Minimal
   
=== IP2000/IP6000 must permit more than 8000 users ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49079 49079]
|}
problem: for the IP2000/IP6000 the number of objects in stored flash directory is restricted to 8000 but some customers need more.  <br/> <br/>solution: increase default to 10000, permit for more (or less) via "config add FLASHDIR0 /max <number-of-objects>"<br/> <br/>files: flashdir.cpp, config.h<br/><br/>products: IP2000/IP6000<br/><br/>risks: None
''Status:''
checked in to 7.00,08-70300
   
=== PBX: Reference to Config Template lost, when opening User from Registrations page ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49090 49090]
|}
problem: If a user object was opened from the Registrations page a configured config template was not displayed. By pressing Save or Apply the user object was written without the config template<br/><br/>solution: Display config template when opening user object from registrations page<br/><br/>files: pbx_regs.xsl<br/><br/>products: all with PBX<br/><br/>risks: None
   
= V7 Hotfix14 (10-70300.25) =
Changes included in Version 7 hotfix14
[http://mantis.innovaphone.com/view.php?id=49142 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== Need to configure 'Route Root-Node External Calls to' in case of 'License Only' on Slave ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49138 49138]
|}
problem: A Slave or Standby-Slave PBX configured as 'License Only' did not allow to configure a Root Node Extern destination<br/><br/>solution: Allow configureation of Root-Node Extern<br/><br/>files: pbx_general.xsl<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== Media Renegotiation from H.323 Slowstart to H.323 EFC failed accross multiple PBXs ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49148 49148]
|}
problem: The message with the new FeatureSet, which indicated a switchover from non-EFC to EFC was not forwarded by the PBX. This happens if a slow-start endpoint located at a slave transfers a call originating from another slave so that both new endpoints are EFC. The master in this case did not forward the switchover FeatureSet.<br/><br/>solution: forward FeatureSet<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risks: None
   
=== Gateway: CGPN Map at route was executed even if the call using this route failed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49176 49176]
|}
problem: A CGPN Map at a route was executed even if the call using this route failed. This was confusing if rerouting was configured in case a destination was not available.<br/><br/>solution: CGPN map not executed if call failed, so rerouting could be done with the same CGPN<br/><br/>files: gk.cpp<br/><br/>products: all gateway products<br/><br/>risks: Could be that there are configs depending on old, wrong behaviour
   
=== H.323: EFC coding wrong ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49199 49199]
|}
problem: Coding of EFC was wrong in early versions. This was fixed, but can be configured to the old (wrong) coding with config change H323 /fix 0, with config change H323 /fix 1 the fix can be turned on. Without the /fix option the default should be fixed, was was not.<br/><br/>solution: /fix default set to 1<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risks: Compatibility with mixed versions
   
=== SIP: Not accepting calls from alternative proxy ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49281 49281]
|}
Problem: When being registered at a proxy with 2 ip addresses the gateway does not accept calls from the alternative ip address.<br/><br/>Solution: Accept calls from both ip addresses learned by DNS.<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk.
   
=== SIP: 180/Ringing was not re-transmitted ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49413 49413]
|}
Problem: If 180/Ringing got lost and the caller re-transmitted INVITE, re-transmission of 180/Ringing was missing.<br/><br/>Solution: Re-transmit last sent provisional response.<br/><br/>Files: siptrans.cpp<br/><br/>Products affected: SIP devices<br/><br/>Risk: No risk.
   
=== PBX: After CFNR from Waiting with end of first announcement no MOH during call proceeding/alerting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49459 49459]
|}
problem: If a CFNR is executed at the end of the first announcement of a Waiting object (no second announcement), MOH should be played during call proceeding/alerting of the forwarded call. This did not happen, because MOH was turned off by accident with clearing of the announcement call.<br/><br/>solution: Don't turn off MOH<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: litte risk of other media problems within PBX
   
=== headset mode must be kept when a knocking call is accepted via operator while a disconnected call is pending ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49797 49797]
|}
problem: a knocking call accepted via operator was routed to speaker instead to headset when the phone was in headset mode playing the busy tone for a call which was disconnected from remote.<br/><br/>solution: fix in code<br/><br/>files: app_ctl.cpp<br/><br/>products: all phones<br/><br/>riscs: none<br/>
''Status:''
checked in to 7.00,08-70300 
   
=== IP800 conference ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49799 49799]
|}
problem: Conference hardware initialization for channel ten does not work.<br/><br/>solution: Delay within initialization sequence inserted.<br/><br/>files: ipac_drv.cpp.<br/><br/>products affected: Devices with IPAC chip.<br/><br/>risk: No risk of collateral damage.
   
=== IP302/IP305: PCM connected channels disconnect other channels media ===
 
{|
|Status
|<font><font color="red">Assigned</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49880 49880]
|}
problem: disconnect is sent to wrong channel<br/><br/>solution: fixed in code<br/><br/>files: ac_dsp3.cpp <br/><br/>products: ip302 ip305 <br/><br/>risks: low risk
   
=== One-way-voice after unpark/pickup together with SRTP, H323 and Registration with password ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=49965 49965]
|}
problem: Within media renegotiation after unpark/pickup a wrong SRTP key was sent. This resulted in one-way media.<br/><br/>solution: Transmit correct SRTP key<br/><br/>files: h323sig.cpp<br/><br/>products: all<br/><br/>risk: Other media problems
   
=== Media Negotiation between SIP and H.323 failed if Offer from both sides available ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50050 50050]
|}
problem: If a H.323 and a SIP call leg were to be connected and a media offer was available on both legs, nothing happend. The new offer should have been sent on the H.323 leg. This situation could happen in special cases with transfer and reverse media.<br/><br/>solution: Send offer on H.323 in this case<br/><br/>files: h323ch.cpp<br/><br/>products: all<br/><br/>risk: Small riks of collateral damage
   
=== PBX: Special fix for group-indications to exec now for exec only ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50054 50054]
|}
problem: A special fix was done for the problem that a exec needs to see if a call ringing at the secretary, is a call which is actually directed to the exec or if the secretary was called directly. Group Indication for calls diverted by the user sent to the user are sent as if the call was ringing at the user. This causes problems, because the Group Indications do not wor as expected.<br/><br/>solution: Do this fix for exec only. In 8.00 this is fixed in a better way (diverting info added to group indication)<br/><br/>files: pbx_gi.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== GUI: Registration indicator not aligned ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50074 50074]
|}
Problem: The registration indicator (arrow) was not aligned on Gateway/GK page.<br/><br/>Solution: Make it aligned.<br/> <br/>Files: relay_ifs.xsl<br/><br/>Products affected: All gateways<br/><br/>Risk: No risk.
   
=== Gateway sends calls to wrong registered SIP endpoint ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50103 50103]
|}
Problem: If the addressed endpoint is currently not registered at the registrar interface at the gateway, calls are delivered to another registered SIP endpoint.<br/><br/>Solution: Reject calls if addressed endpoint is not registered.<br/> <br/>Files: siptrans.cpp<br/><br/>Products affected: All gateways<br/><br/>Risk: No risk.
   
=== AD Replicator, Searches to Global Catalog Server weren't possible ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50130 50130]
|}
Description \tproblem: Searches to Global Catalog Server weren't possible<br/><br/>solution: Fix configuration for LDAP port<br/><br/>files: ldaprep.cpp<br/><br/>products: all PBX-,Dect products<br/><br/>risks: None
   
=== fat32 check disc trap ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50202 50202]
|}
Problem: After a firmware trap with a cf card, the afterwards check disk can cause a trap loop, if directory entries are corrupt because of the first trap.<br/><br/>Solution: Increment counter which caused the trap loop.<br/> <br/>Files: fat32.cpp<br/><br/>Products affected: All gateways with CF slot<br/><br/>Risk: minor risk
   
=== SIP: Expires parameter not always decoded from REGISTER response ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50211 50211]
|}
Problem: If the registrar added a display name to the client's Contact-URI the assigned expires value was not decoded.<br/><br/>Solution: Ignore display name in Contact-URI of REGISTER response.<br/> <br/>Files: sip.cpp<br/><br/>Products affected: All SIP endpoints<br/><br/>Risk: No risk.
   
=== Wrong calling party info on CTI initiated calls from a phone to a Trunk Object with 'Set Calling=Diverting No' checked ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50304 50304]
|}
problem: When a CTI application (TAPI or other SOAP based application) initiates a call from a phone to a Trunk Object with 'Set Calling=Diverting No' checked the the called party receives a wrong calling party info.<br/><br/>solution: when a CT-INITIATE is received on a RC-CONNECT call the cdpn in the CT-SETUP facility sent with the newly created outbound call is set to the phones own number (i.e. identical to the SETUP cgpn). <br/><br/>files: phonesig.cpp<br/><br/>products: all phones<br/><br/>riscs: none<br/>
''Status:''
Additional Information \tchecked in to 7.00,08-70300
   
=== IP-DECT hanging calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50387 50387]
|}
problem: Sometime there are hanging calls in the radio.<br/><br/>solution: New timer added to check for hanging calls.<br/><br/>files: dectradio.h, dectradio.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
= V7 Hotfix15 =
Changes included in Version 7 hotfix15
[http://mantis.innovaphone.com/view.php?id=50629 Definition]
 
== New Features ==
 
 
   
== Bug Fixes ==
 
 
   
=== INCA phones - monitoring a headset conversation via handset (headset-spy) did not work ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50672 50672]
|}
problem: the /headset-spy option was skipped because of a bug in the driver option handler<br/> <br/>solution: fix in code<br/> <br/>files: inca_dsp.cpp<br/><br/>products: all phones<br/><br/>risks: None<br/>
''Status:''
checked in to 7.00,08-70300
   
=== in  any phone recording mode the recorder gets number and/or h323id of the  currently connected remote party ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50823 50823]
|}
problem: without this infomation the identification of the remote party in an recorded call requires syncronisation with log files not directly available in the recorder.<br/> <br/>solution: a CT-COMPLETE with number/h323id of the remote party is sent to the recorder whenever the remote party changes because of a consultation call or a call transfer.<br/> <br/>files: appp_form.cpp, app_fkey.cpp, app_disp.cpp, app_ctl.cpp, app_ctl.h, app_call.cpp <br/><br/>products: all phones<br/><br/>risks: Minimal for recorders not able to deal with CT-COMPLETE info<br/>
''Status:''
checked in to 7.00, 08-70300
   
=== Progress Indicator 'Call not end to end ISDN' sent with each H.323 alert ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=50944 50944]
|}
problem: The PI 'call not end to end isdn' was sent with each H.323 alert. But this progress code also indicates that in-band info is available, so a local ringback is sometimes turned of because of it.<br/><br/>solution: Do not send 'call is not end to end isdn'<br/><br/>files: relay.cpp<br/><br/>products: all gateway products<br/><br/>risk: Could be that some endpoints require this PI
   
=== wrong calculations causing check disc to damage data ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51304 51304]
|}
Problem: check disc could produce damaged data in certain situations<br/><br/>Solution: correctly calculate partial records and clusters for next run. Also check if clusters are used multiple times.<br/><br/>Files: fat32.cpp, fat32.h, fat32.xsl<br/><br/>Risk: minor risk
   
=== v7:Qsig: leg1Info sent with ALERT msg, instead of in FACILITY msg ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51346 51346]
|}
Problem: Siemens ACWin got confused after upgrade v6->v7. Qsig mandates to send the leg1Information within a FACILITY message (while H.323 does also allow for an ALERT to carry the leg1). <br/><br/>Solution: Detect and treat this case accordingly within the relay/gateway.<br/><br/>Files: relay.cpp<br/><br/>Risk: none<br/>
   
=== Phone: Local coder config was not used on outgoing phone calls ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51352 51352]
|}
Problem: Local coder config was not applied to outgoing phone calls, but is required when it comes to media re-negotiation.<br/><br/>Solution: Give local coder config to all kind of calls.<br/><br/>Files: phonesig.cpp/h<br/><br/>Products affected: All phones.<br/><br/>Risk: No risk.
   
=== PBX-CDR: Local Time wrong (same as UTC) ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51416 51416]
|}
problem: In the CDRs from the PBX the local time was always set to UTC<br/><br/>solution: Use correct time<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== IP-DECT wrong forward of internal information event ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51417 51417]
|}
problem: A internal information event is wrongly forwarded to the PBX.<br/><br/>solution: Forward of this event is avoided.<br/><br/>files: dectradio.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: Minimal risk of collateral damage.
   
=== no RTP-DTMF after rerouting ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51432 51432]
|}
problem: If rerouting happened from one media endpoint to another, for example if a TONE interface is used for a dialtone after one digit dialed there is a rerouting to another interface, RTP-DTMF does not work.<br/><br/>solution: Media renegotiation fixed for this case<br/><br/>files: ac_dsp.h, ac_dsp2.h, ac_dsp3.h<br/><br/>risks: none
   
=== v7: Trace output added to track down cause of "alloc-size" traps ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51446 51446]
|}
Problem: Traps happen within the flash directory due to a memory allocation request greater than the maximum grantable size. <br/><br/>Solution: More information is needed. Added error-trace output.<br/><br/>Files: flashdir.cpp<br/><br/>Risk: none
   
=== IP-DECT trap during call release and information message ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51584 51584]
|}
problem: A trap occurs if the DECT handset sends a information message and the call is release by the PBX. Only the channel is released, but not yet the call.<br/><br/>solution: Null pointer check added.<br/><br/>files: dectmaster.cpp.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage.
   
=== IP-DECT configuration option 'Redirection with GK ID' ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51619 51619]
|}
problem: Configuration option needed to append the GK ID if the registration is redirected by the PBX.<br/><br/>solution: Configuration option added.<br/><br/>files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.<br/><br/>products affected: All DECT devices.<br/><br/>risk: No risk of collateral damage.
   
=== One way media after SRTP renegotiation on IP6000 ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51691 51691]
|}
Problem: On the IP6000 platform the SRTP ROC was not reset on media renegotiation.<br/><br/>Solution: Reset SRTP ROC when rtp_channel::set_media_config is called<br/><br/>Files: srtp_cipher.cpp<br/><br/>Risk: no risk known<br/>
   
=== Trap in SRTP socket ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51693 51693]
|}
Problem: Under special conditions SRTP sockets send events to serials that are already deleted.<br/><br/>Solution: Check if the destination does still exist before sending the event.<br/><br/>Files: srtp_cipher.cpp<br/>
   
=== Possible trap when removing a cf card without previous unmount ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51704 51704]
|}
Problem: events where queued to not exisiting serial<br/><br/>Solution: cf driver shouldn't answer outstanding events after removing the cf card, as the fat32 module won't wait for any events after receiving status removed event<br/><br/>Files: cf_drv.cpp<br/><br/>Risk: minor risk
   
=== Trap if some but not all interfaces of a given type are unlicensed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51772 51772]
|}
problem: If some but not all interfaces are unlicensed (e.g. IP6000 with 4 PRI interfaces is licensed for 2 PRI interfaces) a trap could happen any time after the Gateway config was updated.<br/><br/>solution: Access to license structure fixed<br/><br/>files: inno_lic.cpp, gk.cpp<br/><br/>products: all gateway products<br/><br/>risks: None
   
=== PBX: SOAP initiated calls were sent with CT-SETUP ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=51965 51965]
|}
problem: If a call was initiated by SOAP to the PBX, the outgoing call contained a CT-SETUP facility. This way the call was displayed as transfered call by the destination, but it should be displayed just the same as a call initiated on the phone itself.<br/><br/>solution: remove CT-SETUP from outgoing call<br/><br/>files: pbx_xml.cpp<br/><br/>products: all with PBX<br/><br/>risks: None
   
=== PBX: Successive diversion activate/deactivate and dynamic group status sometimes failed ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=52038 52038]
|}
problem: If a diversion activate/deactivate from an endpoint arrived before the last was written to flashdir, update was performed based on information in dram not information being written into flash<br/><br/>solution: Update information in dram before writing to flashdir<br/><br/>files: pbx.cpp, pbx.h, pbx_api.h, pbx_dtmf.cpp<br/><br/>products: all with PBX<br/><br/>risks: Collateral damage with diversion/dynamic group updates
   
=== SIP: Missing dialog-info for calls without or zero-length CGPN ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=52060 52060]
|}
Problem: No dialog-info was sent for calls without or zero-length CGPN.<br/><br/>Solution: Use calling party's name if no CGPN is available.<br/><br/>Files: sip.cpp<br/><br/>Products affected: All PBX's serving SIP phones<br/><br/>Risk: No risk.
   
=== PBX potential trap in case of collision of disconnect with intrusion and other operations changing media peer ===
 
{|
|Status
|<font><font color="green">Closed</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=52070 52070]
|}
problem: If a call is attempted to intrude right when this call is being disconnected at NULL pointer access could happen<br/><br/>solution: Check if call is still active when before execute intrude<br/><br/>files: pbx.cpp<br/><br/>products: all with PBX<br/><br/>risks: none
   
=== SIP: SRTP key changes right after connect ===
 
{|
|Status
|<font><font color="orange">To-decide</font></font>
|-
|Id
|[http://mantis.innovaphone.com/view.php?id=52169 52169]
|}
Problem: During call establishment with SRTP a re-INVITE is initiated right after connect providing a new SRTP key. It's unnecessary and some equpiment fail to handle change of SRTP key.<br/><br/>Solution: Avoid change of SRTP during call.<br/><br/>Files: sip.cpp/h<br/><br/>Products affected: SIP Gateways<br/><br/>Risk: No risk.
   
= V7 Change Requests =
These are change requests applicable for v7, which are considered for implementation.
[http://mantis.innovaphone.com/view.php?id=52938 Definition]
 
== New Features ==


__NOEDITSECTION__
{{#invoke-url: http://wiki.innovaphone.com/extensions/InvokeUrlFunction/projectListWebsocket.php?project=Firmware%20V7}}


   
[[Category:Release Notes|Firmware]]
== Bug Fixes ==

Latest revision as of 23:46, 22 January 2021

This is the Version 7 firmware Release Notes.

The release date of the next Hotfix is planed for the second monday of a month. Please note that this a scheduled and no fix date.

Please see the disclaimer before using the information presented here!


Firmware V7

V7 Hotfix 1 (08-70300.06)

131 - "Administration/Diagnostics/Events/Save" should be enabled in viewer mode

Ticket #35742. Problem: The "Administration/Diagnostics/Events/Save" link is disabled in Viewer mode while "Administration/Diagnostics/Config Show" and other links creating textfiles with support info are not.

Solution: enable the "Save" link in xsl file

Products affected: All

Risk: None

193 - An incoming transfer on a call which was initiator of a rejected transfer before did not work (direct signalling)

Ticket #36210. Problem: the call on which a transfer is requested is not restored to the correct signalling state after the transfer has been rejected. The new incoming transfer request is accepted but fails after setup of replacement call because of the wrong signalling state.

Solution: save signalling state before setup of replacement call and restore when replacement call fails.

Products affected: All INCA phones and IP72

Files: phonesig.cpp, phonesig.h

Risk: Minimal, direct signalling not used in innovaphone environment

184 - automagic URL filename expansion in update 'bmc' command wrong

Ticket #36124. Problem: the file name appended to the '/' terminated URL od a 'bmc' command is "ccfp1200" but not "ccfp1200.bin" as documented in wiki and used for the delivered file.

Solution: fix name in update.cpp, add note to wiki

Products affected: IP1200

Files: update.cpp

Risk: Low, most probably most customers did not use this feature

203 - Avoid endless authentication re-trying

Ticket #36261. Problem: Endless authentication re-trying if the auth request does not contain a nonce (e.g. NTLM auth)

Solution: Don't take 'no nonce' as 'changed nonce'

Files: sip.cpp

Products affected: All devices

Risk: No risk

127 - CFU to Voicemail/Redial

Ticket #35634. problem: If you dial a local user and gets his voicemail by CFU, then if you try to redial the number by pressing the redial bottom, the Voicemail name will appear in the display, but it is the correct local number that is dialed.
We are running an IP6000 SR2 Hotfix 9 with Innovaphone voicemail.

solution: send divertingLegInformation1 to caller

products: All PBX products

risk: none

179 - Changed keep alive configuration for oem interoperability

Ticket #36118. Problem: Keep alive is required for OEM.

Solution: Keep alive is enabled for OEM.

Files: dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal. OEM specific.

215 - Clear all sockets if registration changes

Ticket #36361. problem: In case of the reuse_tcp option, old socket where used even if registration changed. Fallback from IP-DECT Standby to Master did not work because of that.

solution: cleanup all sockets if registration changes

files: h323.h h323sig.cpp

products: IP1200

risks: limited to IP1200

160 - croatian translation corrections

Ticket #35935.
Problem: parts of croatian translation needed corrections

Solution: corrected

Products affected: All phones

Risk: None

133 - Debugging Info for MAX_BUSY_TICKS improved

Ticket #35752. Problem: After a trap with MAX_BUSY_TICKS it was not possible to see which event caused the problem

Solution: Debug Information added

Products affected: All

Risk: None, code only executed on a trap

185 - Dect MWI message center number configurable to user number

Ticket #36161. Problem: No possibility to configure a message center number with user number.

Solution: Implementation of this new feature: if MWI is enabled and no fix message number is configured the user's number is called as message center number.

Files: dectfty.h, dectfty.cpp, dectfty.xsl (oem), dtmffty.h, dtmffty.cpp.

Products affected: All Dect devices.

Risk: Minimal.

128 - Dect SIP registration to PBX with authentication name

Ticket #35680. Problem: Authentication name of the Dect user is not used for SIP registration if 'Name for Authentication' option is enabled.

Solution: If authentication name is set for the user, it is used for SIP registration independent of the 'Name for Authentication' option.

Files: dectmaster.cpp.

Products affected: All Dect devices.

Risk: Minimal.

134 - Display Master Id in users list

Ticket #35753. Problem: Master Id is unknown by the user administrators.

Solution: Display the Master ID in the create/edit users view (Users->Users), because the user administrators must know the Master Id to be able to log in handsets.

Products affected: IP1201, IP4001

Risk: Minimal

182 - DSP channel of transfer initiating call lost when call is released by the party requesting the transfer

Ticket #36122. Problem: If the call on which the transfer is requested is released by the remote party before the replacement call reaches alerting/connected state the DSP channel assigned to the initiating call is not freed and lost until reboot. first seen in direct signalling tests but may happen with gk-routed signalling too.

Solution: free DSP channel.

Products affected: All INCA phones and IP72

Files: phonesig.cpp, phonesig.h

Risk: Low, very unlikely to happen in innovaphone environment

199 - Factory reset with V7 bootcode clears linear firmware

Ticket #36251. Problem: factory reset didnt check for linear firmware

Solution: check added

Files: flash_firmware.c

Products affected: ipxxx with V7 bootcode ( all except IP3000 and IP72 )

Risk: general bootcode update risk

172 - Firmware stall with MAX_BUSY_TICKS and Watchdog

Ticket #36099. problem: Firmware produces unpredictable stalls which results from a permanent occuring interrupt from the si3241 chip. This interrupt is accidently enabled but never occured in the past.

solution: disable this interrupt

files: si3241.cpp

products: ip28

risks: minimal, very isolated fix

207 - Fix for internal test module for Dect

Ticket #36283. Problem: Memory leak and trap in dummysig module.

Solution: Fixed.

Files: dummysig.h, dummysig.cpp.

Products affected: All Dect devices in test mode.

Risk: No risk; module only used for internal tests.

146 - fix for ringback after taking incoming call completion response/ renaming call completion to call completion busy

Ticket #35829. problem: If a user dials the call completion feature code, gets the call completion response call and answers it, so that the other side is ringing, no ringback tone was heard.
Additionally, as call completion no response is currently not possible, I would rename call completion to call completion busy.

fix: api_remote_hold on connector after SIG_ALERT

products affected: all pbx devices

risk: minimal

132 - Fix for Session-Expires handling

Ticket #35749. Problem: Some SIP endpoints send reINVITE w/o Session-Expires header
on calls established with session refresh. The SIP stack released the call in this case. This prevented interoperation with such SIP equipment

Solution: Restart the timer with the original expires value.

Products affected: All

Risk: Minimal

213 - Fix for trap in HTTP client

Ticket #36357. problem: trap in HTTP client (deleted packet to user)

solution: fixed in code

files: httpclient_i.cpp

products: all products

risks: no risk

140 - Forwarded Name Id sometimes corrupted

Ticket #35775. Problem: Sometimes to Name Id, which is forwarded (e.g. Name Id forwarded on DECT Master to Radio, or Name Id forwarded in PBX) strange characters are added. strcopy was used instead of memcpy. Name still transmitted on H.450 null-terminated for compatibility

Solution: Use correct method for copy. Don't add null-character in H.450.

Products affected: All products with IP-DECT or PBX

Risk: Minimal, very isolated fix

194 - Frequency band support for Brazil (Subset of South America)

Ticket #36216. Problem: Frequency band support for Brazil (Subset of South America).

Solution: New Dect Radio BMC firmware.

Files: New BMC firmware version PCS 05Ae, dect.h (oem), dect.cpp (oem), dect.xsl (oem).

Products affected: IP1200.

Risk: Normal.

157 - H.323 non-efc: User RoundTripDelayRequest as keep-alive

Ticket #35916. problem: For interoperability with some OEM equipment it is required to do the RoundTripDelayRequest keepalive

solution: Implement periodic RoundTripDelayRequest messages

files: h323ch.cpp/h

products: all

risks: Minimal (could be that there is H.323 equipment, which does not understand RoundTripDelayRequest, but very unlikely)

173 - H.323 reuse TCP did not work for call-independetnt messages

Ticket #36102. problem: The reuse TCP option is required for OEM trunk interfaces not only for calls but also for call-independent messages. A new TCP socket was opened in this case for each message, which was never closed.

solution: Use existing TCP socket for these messages

files: h323sig.cpp

products: all

risks: Minimal, code only executed if reuse_tcp set, which happens only for special OEM cases

169 - Hold state indication not cleared on a call transfer requested via direct signalling

Ticket #36041. Problem: the call on which the transfer is requested is set on hold by remote party before. the hold state was not cleared after release of this call.

Solution: clear hold state when the replacement call is set up.

Products affected: All INCA phones and IP72

Files: phonesig.cpp, phonesig.h, forms_phone_impl.cpp (test support)

Risk: Low, direct signalling not used in innovaphone environment

139 - Idle display updates if masters are down

Ticket #35770. Problem: No idle display update if the connection to masters fails.

Solution: Idle display update added.

Products affected: IP1201, IP4001.

Risk: Minimal.

147 - IP-DECT Sporadic Hanging Radio Calls

Ticket #35830. Problem: It could happen under special call clearing timing conditions that Radio calls remained in the User interface. The affected endpoints could still be called.

Solution: Improve call clearing to avoid this.

Products affected: All IP-DECT products

Risk: Minimal, very isolated fix.

209 - IP150 - Right hand part of OEM specific WEB interface is not displayed

Ticket #36312. Problem: An IP150 with OEM id 9 (FHF) does not display the right hand part WEB interface

Solution: add login-menu template to fxf.xsl (OEM replacement for inno.xsl)

Products affected: IP150

Files: fxf.xsl

Risk: None

141 - IP22 running out of sync

Ticket #35791. Problem: IP22 initial value for internal PLL set wrong.

Solution: Initial value must be set correctly.

Products affected: ip22

Risk: Minimal, very small change

163 - IP72: default backlight off

Ticket #35948.
Problem: with factory defaults, backlight level set to 0 (disabled)

Solution: fixed code to activate backlight (level 9)

Products affected: IP72

Risk: None

164 - IP72: fix default contrast settings for phones with hw-id F2

Ticket #35950. Problem: with factory defaults, LCD contrast may not be satisfying

Solution: added contrast adjust on phone ui (phone-settings menu)

Products affected: IP72

Risk: None

125 - IP72: new display driver for LCD NT75451

Ticket #33028. Problem: newer phones require another lcd driver

Solution: fixed in code

Products affected: IP72

Risk: None

217 - IP72: use production settings variable to det default contrast

Ticket #36386. problem: IP72: use production settings variable (if available) to det default contrast

solution: read vars1, set accordingly

files: lcd_ip22x.cpp

products: IP72

risks: none

191 - IP800: Lost trace after trap to minifirmware and load to DRAM

Ticket #36197. Problem: Stack was initialized

Solution: Stack init removed

Files: ip800.cpp

Products affected: IP800

151 - join/leave pbx dtmf feature should show all dynamic groups, independent of their current state

Ticket #35846. problem: currently, a user, who dials the join code, just gets his groups with dynamic out state. If he has no such group, his call will be rejected.
This might let the user think, that the dtmf object is buggy.

fix: just show all dynamic in/out groups for leave/join. If a user joins a group, where he is already in, nothing will happen and the user gets his affirmation tone.

products affected: all pbx devices

risk: minimal

138 - Load balancing for trunks

Ticket #35761. Problem: Location registrations don't use load balancing between trunks.
Problems appear with outgoing calls via trunks without location registrations.

Solution: Load balancing for location registrations added.
Make a location registration before every outgoing call.

Products affected: IP1201, IP4001

Risk: Minimal.

156 - Logging of calls in PBX cannot be turned off

Ticket #35913. problem: Call logging in PBX is always on. This can be a privacy problem.

solution: Call logging configurable

products: All products with PBX

files: pbx.cpp/h log.xsl

risk: Minmal. Call logging is now off by default, this could be a compatibility issue.

171 - Make H.245 keepalive with RoundTripDelay messages configurable

Ticket #36067. problem: RoundTripDelay messages cause additional load, so it should be done only if required for interop reasons

solution: Make it configurable in the stack, so it can be turned on for OEMs

files: voip.h, h323.h, h323sig.cpp, h323ch.cpp

products: all

risks: None, in fact it reduces the risk of the change to put in the RoundTripDelay messages

198 - mapping of "600 Busy Everywhere" to cause #17 (User Busy)

Ticket #36238. Problem: "600 Busy Everywhere" is mapped to cause #21 (Call rejected)

Solution: Map to cause #17 (User Busy)

Files: sip.cpp

Products affected: All devices

Risk: No risk

143 - Memory leak in Dect

Ticket #35819. Problem: Memory leak in Dect.

Solution: Call clean up function.

Products affected: IP1200.

Risk: Minimal.

205 - Memory leak when executing call-completion on IP-DECT

Ticket #36265. problem: When executing call-completion packets containing faststart elements are not deleted

solution: Free the packets

files: dtmffty.cpp

products: All IP-DECT

risks: Almost no risk

192 - Message Waiting Indications from a PBX Message Waiting Object are not visible in a special workíng environment

Ticket #36201. Problem: To receive Message Waiting Indications for a certain number on from a PBX Message Waiting Object on multiple phones each phone uses a separate registration to this Object. A MWI received on a registration triggers only a MWI-key defined for this registration. Because the registration to the Message Waiting Object is not the active registration neither the global led nor the key led (if any) is triggered.

Solution: a 'global' flag is added to the MWI-key. If the flag is set a MWI matching this key is broadcasted to all registrations at the same PBX. Two MWI-keys need to be defined: one with the 'global' flag for the registration to the Message Waiting Object and one for the user registration.

Products affected: All INCA phones and IP72

Risk: Low, only applied if 'global' flag is set

158 - missing details in event log "no route to destination"

Ticket #35917. Problem: cause "unknown" is reported if a packet is directed to a specific interface but cannot be sent because the destination address requires a gateway and there is no gateway configured for this interface.

Solution: fix code

Products affected: All

Risk: None

214 - mwi function key configuration in the phone-ui was not complete

Ticket #36360. problem: mwi function key configuration in the phone-ui was not complete

solution: fixed in code, added "global" and "append own number" flags

files:

products: phone_inca, ip72

risks: none

186 - MWI not updated at PP power up

Ticket #36162. Problem: MWI not updated at PP power up.

Solution: Sending mwi state after receiving power up event.

Files: dect.h, dect.cpp (oem).

Products affected: IP1200.

Risk: Minimal.

168 - Need to set H.323 terminal_type for OEM

Ticket #36032. problem: For interop reasons the terminal-type must be set to 50 even for a VOIP_GW type interface

solution: terminal_type configurable

files: voip.h, h323sig.cpp, h323sig.h

products: all

risks: Minimal. Functionality not used in innovaphone products

167 - Need to Support STATUS_INQ/STATUS procedure in H.323 for OEM

Ticket #36022. problem: For an OEM product we need the H.323 STATUS_INQ/STATUS procedure to supervice the link state

solution: STATUS_INQ/STATUS in H.323 stack implemented

files: signal.cpp, signal.h, h323sig.cpp, h323sig.h, h323_tbl.tbl

products: all

risk: Moderate, functionality only used in OEM product. Should not have any influence if not used

152 - New cause code mapping specification

Ticket #35858. Problem: New cause code mapping specification.

Solution: Cause code mapping changed.

Products affected: IP1201, IP4001.

Risk: Minimal.

201 - No DISC signaling with INFO(application/qsig) if not supported by remote side

Ticket #36259. Problem: INFO(application/qsig) might not be supported; don't try if not supported

Solution: detection of 415/488 reject for INFO(application/qsig)

Files: sip.cpp

Products affected: All devices

Risk: Missing inband info, since call is released if disc cannot be signaled

148 - No Media doing call from IP-DECT to slowstart destination which answers with CONN and Suppl. Services are enabled

Ticket #35835. Problem: Media negotiation result was not forwarded to the radio if CONN was first response to the call.

Solution: Forward media negotiation result

Products affected: All IP-DECT

Risk: None

190 - Not possible to disable option "Allow DTMF through RTP"

Ticket #36196. Problem: Not possible to disable option "Allow DTMF through RTP".

Solution: Fixed.

Files: dectmaster.cpp, dectmaster.xsl (oem).

Products affected: IP1200.

Risk: Minimal.

180 - OEM specific call status support

Ticket #36120. Problem: OEM specific call status support required.

Solution: Call status support implemented. OEM specific enabled.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal. OEM specific.

178 - OEM specific change of PBX registration configuration for coder selection

Ticket #36115. Problem: Coder is rejected (OEM specific).

Solution: Registration configuration changed.

Files: dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

187 - OEM specific Dect ras connection up event

Ticket #36163. Problem: OEM specific Dect ras connection up event specification changed.

Solution: Ras connection up event handling changed.

Files: dectradio.h, dectradio.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

206 - OEM specific disabling of the feature to change admin login

Ticket #36274. problem: For an OEM the feature to be able to change login caused undesirable behaviour with IE

solution: Disable the change login feature for OEM

files: command.cpp command.h

products: all, but change should change behaviour only for OEM products

risk: Only for OEM products

208 - OEM specific GUI view

Ticket #36285. Problem: New OEM specific GUI.

Solution: Files changed.

Files: dect_edit_user.xsl (oem), dect_edit_users_right.xsl (oem).

Products affected: IP1201, IP4001.

Risk: No risk; oem specific, only GUI.

176 - OEM specific location handling during handover

Ticket #36107. Problem: New OEM specific location handling during handover.

Solution: OEM specific location handling changed.

Files: dectmaster.cpp, dectradio.h, dectradio.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

188 - OEM specific location state for disconnected radio connections

Ticket #36164. Problem: OEM specific location state for disconnected radio connections is not changed.

Solution: Implementation of location state handling changed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

175 - OEM specific pre-dial support

Ticket #36105. Problem: New OEM specific pre-dial support.

Solution: Pre-dial support for OEM added.

Files: dectmaster.cpp

Products affected: IP1201, IP4001.

Risk: Minimal.

216 - OEM specific registration handling if a trunk goes down

Ticket #36385. Problem: Reregistration is missed if a trunk goes down.

Solution: Reregistration of users registered to this trunk before added.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

174 - OEM specific trunk busy handling

Ticket #36103. Problem: New OEM specific trunk busy handling.

Solution: Handling changed.

Files: dectmaster.cpp, dectdisplay_if.h, dectdisplay.h (oem)

Products affected: IP1201, IP4001.

Risk: Minimal.

189 - OEM specific trunk configuration option

Ticket #36165. Problem: OEM specific trunk configuration option is not needed.

Solution: Option removed.

Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl (oem).

Products affected: IP1201, IP4001.

Risk: Minimal.

177 - OEM specific trunk redundancy feature

Ticket #36111. Problem: OEM specific trunk redundancy feature.

Solution: Feature implemented.

Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl (oem).

Products affected: IP1201, IP4001.

Risk: Minimal.

183 - OEM specific unused feature codes

Ticket #36123. Problem: Unused feature codes.

Solution: Unused feature codes disabled.

Files: dectfty.xsl (oem), config.h (oem).

Products affected: IP1201, IP4001.

Risk: Minimal.

218 - PBX routing fails, because access to deleted buffer

Ticket #36429. problem: When doing call routing in the PBX in a very short interval the called party number is read from a already deleted buffer. If the buffer is recycled during this period the routing fails.

solution: Delete buffer after call routing

files: pbx.cpp

products: All with PBX

risks: Small risk of collateral damage doing call routing in PBX

166 - Phone Registration 1 SIP Interop Tweaks - checkmarks cannot be cleared

Ticket #35958. Problem: The checkmarks under "Configuration/Registration 1/Registration/SIP Interop Tweaks" can be set but not cleared via WEB interface.

Solution: fix evaluation of boolean options

Files: phonesig.cpp

Products affected: all INCA phones, IP72

Risk: None

170 - Pickup from executive not possible, if the call was transfered to executive

Ticket #36061. problem: A secretary receives a call for the executive, initiates a consulation call to the executive and hangs up. In this situation the secretary cannot pickup the call from the executive again.

solution: Handle a transfer to the executive

files: pbx_exec.cpp, pbx_exec.h

products: all with PBX

risks: Minimal, very isolated fix

135 - Potential Trap if H.323 Signaling entity deleted when calls active

Ticket #35754. Problem: If a H.323 signaling entity (IP-DECT User, Gateway GW definition, ...) was deleted while a call was active a trap could happen

Solution: Wait with cleanup until all calls are cleared

Products affected: All

Risk: Minimal, very isolated fix

181 - Prevent high Dect-Master CPU load

Ticket #36121. Problem: CPU load in Dect Master device too high.

Solution: Reuse of radio-master TCP connection.

Files: dectmaster.cpp, dectradio.cpp.

Products affected: IP1200.

Risk: Minimal. Tested in previous version.

155 - Prevent random INCA leak reports in test

Ticket #35882. Problem: Tests fail randomly because of a leak reported for the var LAN/LINK created by the inca MAC driver and polled in phone idle state any second

Solution: use vars notify mechanism instead of polling

Products affected: All INCA phones, IP72

Risk: None

149 - provide OEM specific DHCP Vendor Class Identifier

Ticket #35838. Problem: in OEM specific network enviromments it may be necessary to use an OEM specific 'Vendor Class Identifier' in DHCP discover/offer messages.

Solution: 'product_info::vendor_class_identifier' defines the OEM spceific value, kernel::vendor_class_identifier() provides it.

Products affected: All

Risk: Minimal

136 - Refresh rate of call list gui pages

Ticket #35755. Problem: Refresh rate too fast to scroll to the end of the following lists: Master calls, Radio calls and Handover calls.

Solution: Refreshing removed.

Products affected: All Dect devices.

Risk: Minimal.

197 - Restart because of Trap in PBX together with transfer/pickup/call-intrusion and Waiting, Voicemail, MWI

Ticket #36235. problem: Under spedial rare conditions a restart could happen on transfer/pickup/call-intrusion together with calls to pseudo objects like Waiting, Voicemail or MWI, because of an invalid cast.

solution: Invalid cast fixed

files: pbx.cpp

products: All products with PBX

risks: Minimal

154 - RTP jitterbuffer did not work well for RTP out of sequence

Ticket #35880. Problem: Too many packets were dropped when many RTP packets where received out of sequence. In realy life this happens rarely, but it is done with OCS certification tests.

Solution: Jitter buffer fixed, to handle this better.

Products affected: All phones, all IP-DECT, IP800, IP6000

Files: medialib.h, media.cpp

Risk: Moderate. Quite a big change, but still isolated.

161 - Sending NOTIFY(sipfrag) with error code reflecting error on transfer call

Ticket #35938. problem: failed transfer call was not correctly indicated on original call

solution: sending of NOTIFY(sipfrag) with error code

products: All products

files: sip.cpp

risk: minmal

137 - Short local tone

Ticket #35757. Problem: A short local tone is generated before the external tone appears.

Solution: Set in-band-flag in Dect Master.

Products affected: IP1201, IP4001.

Risk: Minimal.

130 - SIP debug output to be removed

Ticket #35739. Problem: Debug outputs forgotten in SIP stack
Solution: Debug outputs removed
Products affected: All
Risk: None

153 - SIP specific call transfer handling as required by SIP provider ShoreTel

Ticket #35872. Problem: Currently the call initiating the transfer is released as soon as the replacement call enters alerting state and also in case of an early release of the replacement call.
In SIP (RFC-3515) the initiating call must not be released before the replacement call enters connected state. In case of an early release of the replacement call (transfer rejected) the initiating call must not be released but a transfer failure has to be reported.

Solution: SIP/H323 specific transfer handling in phonesig.cpp

Products affected: All INCA phones and IP72

Risk: Medium, needs to be retested with all SIP providers

211 - SIPS missing in phone UI in protocol list

Ticket #36346. problem: SIPS missing in phone UI in protocol list

solution: fixed in code

files:

products: phone_inca, ip72

risks: none

129 - SOAP LocationUrl return value coding

Ticket #35686. Problem: the PBX returns the url in a <loc> tag while it should be a <return> tag according to the WSDL.

Solutions: fix coding or change wsdl.
Files affected: pbx/xml/pbx_xml.cpp
Risk: near to zero. .Net based SOAP clients do not care anyway, stricter implementations have not worked at all before.

200 - Support for IP111

Ticket #36255. problem: lcd/forms support for upcoming phone model IP111

solution: changed code

files: lcd_ip111.cpp

products: all phone-inca phones

risks: none

142 - switching between primary and secondary DNS on request timeout fails sometimes in NAT

Ticket #35805. Problem: NATted DNS requests waiting for response are kept in a list which is checked in regular intervals for timed out requests. Each timed out request is removed from list and the dns_primary flag is toggled. Thus for an even number of timed out requests the dns_primary flag keeps it's original value.

Solution: toggle the dns_primary flag only once

Products affected: All

Risk: Minimal

210 - Trap because of buffer overrun when logging a login reject

Ticket #36323. problem: If a login reject was logged, depending of the length of the user name a stack buffer was overrun, which could cause a trap

solution: fix buffer size

files: command.cpp

products: all

risks: none

126 - Trap During TLS Connection Termination

Ticket #35603. Problem: Occasional trap while TLS client connection shuts down.

Solution: Fixing state machine

Products affected: All

Risk: none

162 - Trap if no PBX line in OEM specific state

Ticket #35942. Problem: Trap if no PBX line in OEM specific state.

Solution: PBX line check added.

Files: dectmaster.cpp

Products affected: IP1201, IP4001.

Risk: Minimal.

212 - Trap if too many licenses installed and slave obtains license from master

Ticket #36347. problem: If many licenses are installed on a master (e.g. all test licenses), the master traps as soon as a slave tries to read the licenses, because of buffer overrun.

solution: Increase buffer size, better check for buffer overrun.

files: inno_lic.cpp

products: All products with PBX

risks: No risk

195 - Unclosed announcement calls in conference

Ticket #36219. Problem: Unclosed announcement calls in conference.

Solution: Fixed.

Files: pbx_bc_conf.cpp.

Products affected: All devices with PBX.

Risk: Minimal, only Broadcast Conference PBX Object.

145 - Undeleted call facility object

Ticket #35821. Problem: Call facility object isn't deleted if user is unregistered to PBX.

Solution: Deleting corrected.

Products affected: All Dect devices.

Risk: Minimal.

144 - Undeleted calls from anonymous handsets.

Ticket #35820. Problem: Calls from anonymous handsets aren't deleted. Channel information is also not deleted.

Solution: Deleting corrected.

Products affected: All Dect devices.

Risk: Minimal.

150 - Unusual memory leaks after closed calls

Ticket #35839. Problem: Unusual memory leaks after closed calls.

Solution: Call clean-up function for unused events.

Products affected: All devices.

Risk: Minimal.

202 - URI parameter "epid" in AOR

Ticket #36260. Problem: Microsoft OCS rejects registration if no "epid" parameter is present

Solution: Adding "epid" parameter to AOR in From header in REGSTER,INVITE,SUBSCRIBE

Files: sip.cpp, sip.h

Products affected: All devices

Risk: Minimal, since unknown parameters are to be ignored (handled transparently) by specification

204 - V7 Bootcode shows always 999 after firmware downgrade to V6

Ticket #36264. Problem: Bootcode version was defined in each startup file. That version number identifies only to the primary boot for V6 firmware.With V7 the bootcode version is part of the minifirmware.

Solution: global define for bootcode version number to 1000 added. Bootcode numbering from the build system would cause bootcode update more frequently than needed.

Files: boot.h startup_*.S

Products affected: ipxxx with V7 bootcode ( all except IP3000 and IP72 )

Risk: low

165 - Waiting-Queue: No Disconnect-Tone to Caller if external Transfer Call failed

Ticket #35957. problem: failed external transfer call did not caused a disconnect tone to be played to the calling party

solution: do not kill the webmedia channel when the external transfer call is started

products: All PBX products

files: pbx_wait.cpp

risk: minmal

159 - Wrong display information on phone, if a call is forwarded to Waiting

Ticket #35925. problem: If a object is called which has a CFU set to a waiting queue, no information is sent back to the caller that a call-forward has happened, but a name-id from the waiting queue is sent. So the phone associates this name-id with the number dialed.

solution: Send diverting leg1 info in this case

files: pbx_wait.cpp

products: All products with PBX

risks: minimal. Isolated to forwarded calls to waiting.

196 - XPARENT coder in selection list, but cannot be selected

Ticket #36230. problem: The XPARENT coder is used automatically and is not configurable, but is still shown in the list

solution: Remove XPARENT from list

files: channel.h

products: all

risk: none

V7 Hotfix 2 (09-70300.08)

283 - Added SIP interop tweak "Enforce Sending Complete"

Ticket #37334. problem: in some gateway installations a "484 Address Incomplete" response is expected to cause release of incoming call instead of waiting for more dialing digits to come

solution: option "Enforce Sending Complete" to disable overlap dialing

files: sip.cpp relay_edit_voip.xsl relay_edit_sip.xsl

products: All gateway devices using SIP

risks: no risk

244 - after bootcode update and softreset the box enters TFTP mode

Ticket #36708. problem: old tftp entry in DRAM is used

solution: adjust tftp entry, call cache_init

files: startup_ac460.s cache_ac460.s boot.h

products: ip800 ip1200 ip1201

risks: none

240 - alerting calls cannot be picked from trunk object when a connected call is parked at the trunk user

Ticket #36694. Problem: a phone was configured with 2 park keys addressing different park positions at the same object. if an alerting call was picked up by pressing the corresponding key and parked back by pressing this key again an alerting call indicated at the other key could not picked up thereafter.

Products affected: PBX

Files: pbx.cpp

Risk: seems to be low but needs test

254 - Authentication name for SIP registration in DECT devices

Ticket #36836. Problem: Wrong copied user authentication name string for SIP registration.

Solution: Fixed.

Files: dectusers.cpp.

Products affected: All DECT devices.

Risk: Minimal.

229 - Bad URI parameter "epid=(NULL)" in INVITE

Ticket #36611. problem: Bad URI parameter "epid=(NULL)" in INVITE

solution: no epid parameter when interface is not registered

files: sip.cpp

products: All products with PBX or GATEWAY

risks: no risk

281 - Calls from registered devices were rejected

Ticket #37326. problem: Calls from registered devices were rejected if the Contact-URI did not match the Contact-URI of the REGISTER

solution: Use 407 to get authorization header and do registration lookup by authorization name

files: siptrans.cpp

products: All PBX and Gateways using SIP

risks: low: sending SIP messages to wrong remote address/port

242 - clip retry

Ticket #36702. problem: clip reception not assured

solution: sent more than once

files: ab_sig.cpp si3241.cpp

products: ip28

risks: very low

258 - Dect frequency and other bases GUI page

Ticket #36858. Problem: Dect frequency and other bases GUI page is not shown if Dect is disabled or is not configured.

Solution: Fixed.

Files: dect.cpp, dect.xsl.

Products affected: IP1200.

Risk: Minimal.

267 - Dect GUI error message because of duplicate long name

Ticket #37016. Problem: If a Dect user is edited and the new duplicate long name is entered, a wrong error message is displayed in the GUI.

Solution: An additional check for this case is added.

Files: dectusers.cpp.

Products affected: All devices.

Risk: Minimal.

261 - Dect GUI user list

Ticket #36962. Problem: Sort order of user list handling changes to ascending.

Solution: Sort order handling changed.

Files: dect_users_right.xsl, dect_users_left.xsl, dect_edit_user.xsl.

Products affected: IP1200.

Risk: Minimal.

294 - Diverting Info not forwarded by Gateway

Ticket #37671. problem: Gateway did not pass through diverting info (DIVERTING_LEG2) (worked only in case interworking was enabled)

solution: Forward diverting info even if interworking is not enabled

files: relay.cpp

products: All gateway devices

risks: no risk

262 - DSP code update for IP6000/IP800 and related

Ticket #36976. problem: sometimes DSP fifo write fails after fax transmission

solution: use DSP code 560.10 with improved fax and voice packetizer 2.8, add debugcode to show events to the DSP, channelcontrolmode changed to packet mode ( as in V6 )

files: ac_dsp2.cpp ac_dsp2.h ac_dsp2.h ac48xcfg.h ac48xdef.h ac48xhi.c ac48xhi.h ac48xlo.c ac48xlo.h ac48xopt.h userdef.h dl48624_custom.c dl48624.c

products: ip800 ip1200 ip1201 ip4001 ip6000

risks: low

276 - evaluation of #b<num> in the url parameter of "mod cmd UP0 scfg" overrides the character following <num>

Ticket #37162. Problem: file-#b5.txt is evaluated for example to file-0txt (dot missing)

Solution: fix it

Products affected: all

Files: update.cpp

Risk: none

264 - fix for ALARM flooding in SIP

Ticket #36983. problem: systems ALARM log was flooded by alarm "NAT discovery failed" (0x00070001)

solution: send this ALARM only once

files: sip.cpp siptrans.cpp siputil.h

products: All devices using SIP with STUN server

risks: low risk

250 - forward calling name identification on waiting queue during DTMF dialing

Ticket #36811. problem: calling party's name identification was not forwarded by waiting queue after DTMF dialing

solution: forward received calling party's name identification

files: pbx_wait.cpp

products: All PBX waiting queues

risks: low risk

252 - H.323 compatibility issue with h245-after-conn

Ticket #36821. problem: Some H.323 implementations require tunneled H.245 messages to be sent in Facility messages only, not in other signaling messages like Connect

solution: The h245-after-connect option together with H.245 tunneling enforces this behaviour now

files: h323sig.cpp

products: all

risks: very low risk of collateral damage. New code executed only if h245-after-connect option selected

293 - H.323: Duplicate TerminalCapabilitySetAck message sent sometimes

Ticket #37658. problem: In some states 2 TerminalCapabilitySetAck messages were sent in response to a single TerminalCapabilitySet message. This can create problems with some third party equipment

solution: Only send a single TerminalCapabilitySet message

files: h323ch.cpp

products: all

risks: Minimal

278 - H.450 returnError for callTransferInitiate not implemented

Ticket #37178. Problem: H.450 returnError for callTransferInitiate not implemented

Solution: implemented

Files: h450.cpp

Products affected: All devices

Risk: Minimal

266 - hanging calls when SOAP call transfer fails when using SIP operator phone

Ticket #37001. problem: When SIP phone is used as operator phone and a transfer initiated by operator software (SOAP) fails, a call leg is not terminated by PBX

solution: release call leg on receipt of CT_INITIATE_RESULT

files: pbx_xml.cpp

products: All PBX devices

risks: low risk

288 - Hidden config option /remote-domain-in-from

Ticket #37594. problem: some SIP proxys expect their domain name in From-URI (unregistered interfaces only)

solution: config option to use remote instead of local domain

files: sip.cpp

products: All gateway devices

risks: no risk

274 - hide option in v7 hides more than in v6, user and phone settings as well

Ticket #37140. problem: hide option in v7 hides more than in v6, user and phone settings as well. so user configuration is not reachable any more. now there is a difference between user and admin config hiding. one can either hide only the admin submenu (as in v6 - protect the phone from being misconfigured by the user and loose registration or IP settings) or hide all configuration menus (as in v7 - for a public phone e.g., allowing only basic functionality with noting to configure)

solution: hide now interpreted as "hide complete", added another hide option which only "hides administration"

files: app/app_gui.cpp phone/admin/phone_admin_ui.* phone/user/phone_protect.xsl phone/user/phone_user_config.cpp phone/app/app_gui.cpp

products: all phones

risks:nome

301 - Int/Ext added to CF Filter config to allow config of call-forward for internal/external calls only

Ticket #37706. problem: Call Forward for Internal/External calls only was hard to configured (esspecially automatically with TAPI), because unclear which Trunk prefixes to be used for filter

solution: Filter option added to check for Internal/External calls expicility. The private numbering plan is used to determine if a call is Internal

files: pbx_admin.cpp, pbx_edit_cfs.xsl, pbx.cpp, pbx.h, ep_lib.cpp

products: all with PBX

risks: Small risk of collateral damage

227 - IP header of IGMP reports contains invalid Option field

Ticket #36607. Problem: The IP header option field of IGMP reports was badly initialized and did not contain the router alert option. routers or switches may ignore the reports because of the missing option. network maintenance tools may report an error for the wrong option field.

Solution: place router alert in ip_data[0-3], not behind it :-(

Products affected: all products

Files: ipproc.cpp

Risk: None

236 - IP4001 minifirmware sometimes doesnt start

Ticket #36658. problem: unused IRQ are not disabled

solution: disable unused IRQs

files: ip4001.cpp

products: ip4001

risks: none

249 - IP4001 production test interface start procedure is unreliable

Ticket #36807. problem: start procedure assumes that a global variable is persistent over reset

solution: use config flags mechanism instead

files: ip4001.cpp, prodtestif_init.cpp

products: ip4001

risks: none

263 - IP6000 UI: PRI interface T1 options not hidden in E1 mode

Ticket #36977. problem: interface T1 options not hidden in E1 mode

solution: update xsl file

files: falc56_drv.xsl
products: ip6000

risks: low

231 - ISDN: Use REL for call rejection instead of DISC as an interop option

Ticket #36629. problem: Some ISDN public switches seem to have a problem with calls rejected using a DISC message.

solution: Interop option added to use REL instead

files: q931.cpp, q931.h, te_tbl.tbl, isdn_interop.xsl

products: All with ISDN interfaces

risk: No real risk, since behaviour is changed only if option checked

308 - keep original call when replacement calls fails (unsuccessful blind transfer)

Ticket #37796. problem: When blind transfer failed the original call was terminated.

solution: Keep original call

files: phonesig.cpp

products: All phone devices

risks: no

235 - Media negotiation problem at OCS

Ticket #36654. problem: Mediation server rejects our reINVITE with 491

solution: Avoid sending reINVITE when Media-Relay and Exclusive-Coder is configured

files: sip.cpp

products: All gateway products

risks: causing other media negotiation problems

302 - Media Negotiation Problem on SIP-H.323 calls with hold/retrieve

Ticket #37726. problem: On a SIP-H323 call, multiple hold/retrieve cycles could result in no media.

solution: Media Neg. fixed

files: h323ch.cpp

products: all

risks: Small risk of collateral damage

305 - Missing name identification on waiting queue during DTMF dialing

Ticket #37762. problem: name id of calling party not forwarded during DTMF dialing on waiting queue

solution: forward name identification

files: pbxwait.cpp

products: All PBX devices

risks: no risk

292 - Name Identification in Diverting Info

Ticket #37643. problem: Diverting party's name identification not available.

solution: Provide diverting party's name identification in FTY_DIVERTING_LEG2.

files: fty.* sip.* sipfty.cpp h450.cpp pbx.cpp

products: All devices

risks: low risk

241 - no ringing voltage

Ticket #36700. problem: After few days uptime ringing may fail until box will be reset.

solution: change some initial register values

files: si3241.cpp, si3241.h

products: ip28

risks: none

230 - Obtain license from master did not work on standby PBX

Ticket #36624. problem: If a PBX7#0 license was used on a standby to obtain licenses from master, the standby crashed

solution: Bug fixed to avoid crash

files: pbx.cpp, inno_lic.cpp, inno_lic.h

products: All with PBX (except a minimal change in inno_lic, which affects all products with licenses

risks: No real risk

307 - OEM H.323 requirement to send saved INFO after receiving CONN

Ticket #37793. problem: OEM equipment answers call with CONN right away and expects dialing info as keypad after CONN. Dialing info maybe get lost.

solution: Send saved dialing info after CONN

files: h323sig.cpp, h323_tbl.tbl

products: all

risks: Minimal risk of collateral damage

297 - OEM specific available coders

Ticket #37685. Problem: Coder G726-32 is not supported by OEM PBX and should not be shown.

Solution: Coder G726-32 is not shown.

Files: dectusers_if.h, dectusers.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

298 - OEM specific call release

Ticket #37687. Problem: Call is not disconnected in OEM specific case.

Solution: Release event handling fixed.

Files: dtmffty.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

268 - OEM specific cause code mapping

Ticket #37051. Problem: OEM specific cause code mapping specification has been changed.

Solution: Mapping changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

259 - OEM specific dynamic ras connections

Ticket #36956. Problem: Wrong usage counter of ras connection causes a trap.

Solution: Test flag for usage counter added.

Files: dectusers_if.h, dectlocalusers.h, dectlocalusers.cpp, dectradio.h, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

286 - OEM specific endpoint deleting

Ticket #37526. Problem: Subscription in handset is deleted if PP is deleted in conflict situation. OEM specific.

Solution: Endpoint location cancel event is added before deleting the endpoint.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

260 - OEM specific ethernet connection failure handling improved

Ticket #36957. Problem: Handset doesn't recognize permanent connection failure.

Solution: Inform Dect system about permanent connection failure.

Files: signal.h, signal.cpp, dectradio.h, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

222 - OEM specific infinite loop because of invalid pointer

Ticket #36467. Problem: Infinite loop because of invalid pointer in endpoint location object.

Solution: Pointer update during endpoint update added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

306 - OEM specific MSD handling when doing media renegotiation

Ticket #37790. problem: OEM H.323 implementation gets confused when receiving a MasterSlaveDetermination message during slowstart media renegotiation

solution: Option to not send MSD in this case

files: signal.h, h323.h, h323sig.cpp, h323ch.cpp, h323ch.h, dectmaster.cpp

products: all

risks: Small risk of collateral damge. This special behaviour is truned on only for the OEM

279 - OEM specific radio unregistration handling

Ticket #37220. Problem: Infinite loop during OEM specific radio unregistration handling.

Solution: Implementation changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

219 - OEM specific registration handling if a trunk goes up

Ticket #36435. Problem: Reregistration of all users is missed if a trunk goes up.

Solution: Reregistration of users added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

300 - OEM specific sig media info messages filter

Ticket #37689. Problem: OEM specific PBX doesn't support sig media info messages which should be filtered.

Solution: Sig media info messages are filtered.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

299 - OEM specific Suppl. Service MWI

Ticket #37688. Problem: OEM specific Suppl. Service MWI doesn't work and default configuration is wrong.

Solution: Implementation and configuration fixed.

Files: dectfty.xsl (oem), dtmffty.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

265 - OEM specific trunk location registration

Ticket #36990. Problem: No location registration should be sent during call or handover.

Solution: Implementation changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

284 - OEM specific: sending signaling info messages not until gk connect message

Ticket #37365. Problem: Info messages should only be sent of connect message from PBX is received.

Solution: Implemented for OEM.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

270 - On GW interfaces w/o registration the config options "Domain" and "Proxy" did not work properly

Ticket #37112. Problem: On GW interfaces w/o registration the config options "Domain" and "Proxy" did not work properly

Solution: Using "Domain" to build SIP-URIs. Use (optional) "Proxy" to send SIP requests to.

Files: sip.cpp.

Products affected: All Gateway devices with No-Reg-SIP-IFs

Risk: Unexpected problems with no-reg or enum interfaces

296 - One way media when doing multiple transfer together with Media-Relay

Ticket #37680. problem: When a call which was transfered to another PBX with Media-Relay on both PBXs and then another Transfer was done on the remote PBX, there was one-way media. This was due to a H.323 media negotiation bug which could result in one/no-way media with many scenarions as long as Media-Relay is involved

solution: Media Negotiation bug fixed

files: h323ch.cpp, h323ch.h, h323sig.cpp

products: all

risks: There is a small risk of collateral damage

245 - park function key extensions to provide line key functionality

Ticket #36771. Problem: the park function key does provide the line key functionality as expected/preferred by some customers mainly in italy, france and the states

Solution: add two flags the the park function key
1) Park Active Call before Unpark - when a call is unparked with such a key and the currently active call was unparked before with another park-key the active call is parked back to it's previous position.
2) Automatic Connect after Unpark - when a call is unparked with such a key the call is automatically connected to the requesting phone. when parking a call with such a key the call is immediately removed from phone, no busy tone is played.

Products affected: all phones

Files: phone_user_ui.cpp, phone_config.h, fkey_edit_park.xsl, app_reg.cpp, phone_config.cpp, app_fkey.cpp, app_call.cpp, app_ctl.h

Risk: Low, behaviour changed only if explicitely configured

257 - Password complexity

Ticket #36853. Problem: Password complexity function doesn't recognize special characters.

Solution: Fixed.

Files: password.cpp, latin1.h.

Products affected: All devices.

Risk: Minimal.

255 - pbx dtmf object can cause traps with disabled feature codes

Ticket #36844. Problem: if feature codes are disabled and enabled feature codes are called, a check for the disabled feature codes wasn't done, so a null pointer was given.

Solution: check for disabled feature codes

Files: pbx_dtmf.cpp

Products affected: all pbx devices

Risk: none

309 - PBX Dtmf object: no de/activation of cfnr feature possible

Ticket #37798. problem: un-/checking the cfnr feature code checkbox has no effect

solution: change false attribute name in xsl file, was a false paste

files: pbx_edit_dtmf-ctrl.xsl

products: all pbx products

risks: no

251 - PBX error log for external call transfer attempt, which is not allowed

Ticket #36818. problem: If external transfer is not allowed but user still try, the admin must be made aware, to either enable the external call transfer or to educate the users.

solution: Error log implemented

files: pbx.cpp, pbx.h, pbx_api.h

products: All with PBX

risks: very small risk of collateral damage

233 - PBX Routing to a object without Node/PBX not possible from Slave to Master

Ticket #36648. problem: If a PBX object without Node and PBX is configured, it should be possible to call this object on a given PBX by dialing the Node Prefix of this PBX and the Number of the object. This was not possible from a slave to a master.

solution: Routing fixed

files: pbx.cpp

products: all with PBX

risks: Possible collateral damage should be limited to objects without node/pbx

237 - PBX-SOAP UserRedirect call routing did not work for Users not in root-node together with escapes

Ticket #36661. problem: If a call was transfered by SOAP/TAPI to a destination containing escape prefixes, the escape was not removed as it should

solution: Routing fixed

files: pbx.cpp

products: All products with PBX

risks: Collateral damage in the context of PBX call routing

224 - PBX: Call Completion sometimes indicated call-back possible, even if called user still busy

Ticket #36587. problem: A call back possible was indicated if a connected call was cleared on the monitored user, even if this call was a call without media for supplementary services.

solution: For call completion check if disconnected call was with media

files: pbx.cpp

products: All products with PBX

risks: No known risks

295 - PBX: CFNR at user should have precedence over "No Answer" Destination at Trunk

Ticket #37677. problem: It is confusing that a CFNR set at a user is not executed because of a No Answer destination configured at the trunk object.

solution: The CFNR now has precedence over No Answer at Trunk

files: pbx.cpp

products: all with PBX

risks: It could be that some customers expect explicitly the old behaviour, but this is unlikely

277 - PBX: CFNR on 'Gateway' Objects executed if remote party did not answer

Ticket #37169. problem: A CFNR configured on a Gateway type object (Gateway, Trunk, ...) was executed if remote party did not answer. There is no real application for such a behaviour

solution: Execute CFNR only if there is a local problem (e.g. local ISDN interface does not respond)

files: pbx.cpp

products: all products with PBX

risks: Could be there is an applikation for the old behaviour we did not think of

273 - PBX: Routing to objects which conflict with escapes did not work anymore (did work in v6)

Ticket #37134. problem: For a call which is routed back to the calling node, because the destination is not found, it should be checked if there is an object with the same number as an escape first, before sending the call to the node-extern. This was already implemented in v6 and removed by accident.

solution: Implementation from v6 put back

files: pbx.cpp

products: All products with PBX

risks: Code possibly not removed by accident but for some reason

272 - Potential trap on outbound ENUM SIP calls

Ticket #37130. Problem: On ENUM/SIP interfaces a trap may occur if DNS resolving runs into timeout.

Solution: Check signaling state before handling media-info and faciliies.

Files: sip.cpp

Products affected: All Gateway devices with ENUM-SIP-IFs

Risk: Minimal.

285 - Problems registering at some SIP servers with parameter "user=phone" in Contact-URI in REGISTER request

Ticket #37523. problem: Problems registering at some SIP servers with parameter "user=phone" in Contact-URI in REGISTER request

solution: no parameter "user=phone" in Contact-URI in REGISTER request

files: sip.cpp

products: All devices

risks: risk

304 - Problems using SIP for box internal signaling

Ticket #37760. problem: Internal SIP call (e.g. from PBX to Gateway) was rejected

solution: more sophisticated remote address verification

files: siptrans.cpp

products: All Gateway devices

risks: no risk

269 - PSTN->Quickdial-Object->PSTN Calls May Fail

Ticket #37106. Problem: Calls from the PSTN via a PBX Quickdial object into the PSTN may fail with cause="Error Recovery On Timer Expiry".

Solution: Quickdial object must proceed the incoming call.

files: pbx_qdial.cpp

products: All PBX devices

risks: none

221 - R-key usage after handover in alerting state

Ticket #36465. Problem: R-key usage is not possible if handover was made during alerting state.

Solution: Radio call state set command added.

Files: dectradio.cpp.

Products affected: All dect devices.

Risk: Minimal.

223 - SIP allocation limit is too low at 500kB

Ticket #36490. Problem: SIP allocation limit is too low at 500kB and should be platform dependend higher

Solution: Use the platform dependend limit

Files: sip.h, sip.cpp, siptrans.cpp

Products affected: All devices

Risk: Out of memory traps due to badly chosen platform dependend limit

282 - SIP calls were rejected with 403 in case the Request-URI did not match the registered Contact-URI

Ticket #37327. problem: SIP calls were rejected with 403 in case the Request-URI did not match the registered Contact-URI (interop with Nortel CS1000 SIP GW)

solution: no check of Request-URI against registered Contact-URI on SIPx interfaces

files: siptrans.cpp

products: All gateway devices using SIPx to register remotely

risks: low risk

232 - SIP/TCP Response not always been sent through connection of incoming request

Ticket #36631. problem: If a remote SIP/TCP device uses an inbound TCP connection on its side to send a request, the innovaphone opened a new outbound connection for the response.

solution: Keep connection in context of server transaction in order to send the response on the same connection no matter if inbound or outbound

files: siptrans.cpp, siptrans.h

products: All products

risks: other transport problems with SIP/TCP and SIP/TLS

226 - SIP:TRANSIT calls are terminated if unknown coder has been negotiated

Ticket #36606. problem: SIP:TRANSIT calls are terminated if unknown coder has been negotiated

solution: Do not terminate these calls

files: sip.cpp

products: All products with PBX or GATEWAY

risks: Problems with re-negotiation later on

225 - SOAP/TAPI did not show connected for monitored operator of Waiting Queue

Ticket #36588. problem: If a user received a call as operator of a waiting queue, this call was indicated in SOAP/TAPI as alerting even if the user accepted the call.

solution: Fixed bug which prevented forwarding of SIG_CONN to SOAP under some special conditions

files: pbx.cpp

products: All products with PBX

risks: Since the change is at a quite central place, there could be a change in behaviour in other places as well.

238 - Soft conversion via 'drive/CX0' also started after read-operation

Ticket #36688. problem: Soft conversion via 'drive/CX0' also started after read-operation. Ought to start only after write-operation.

solution: Fix to be offered with v7 hf2.

files: fp_xcode.cpp

products: All products with CF card

risks: none

303 - Some OEM equipment only accepts one tunneled H.245 message per H.225 frame

Ticket #37744. problem: An OEM equipment creates strange problems with multiple tunneled H.245 messages within a single H.225 PDU, and only Facility PDUs are allowed for tunneled H.245

solution: The option h245-after-conn results now in single H.245 sent in Facility PDUs

files: h323sig.cpp, h323sig.h

products: all

risks: very small risk of collateral damge. h245-after-conn is rarely needed and using seperate Facility for each H.245 should not create problems

243 - sprintf from standard library pulled by ip6000 ethernet lib

Ticket #36707. Problem: the file IxEthDBUtil.c uses sprintf instead of _sprintf and thus pulls sprintf and a bulk of needless code from libc (syscall stubs, malloc, floating point functions ..., more than 20 kB).

Solution: use _sprintf

Products affected: IP6000/IP2000

Files: IxEthDBUtil.c

Risk: None

280 - Standby master reports missed radios delayed

Ticket #37279. Problem: Standby master immediately reports all radios as missing when going to active mode.

Solution: Standby master checks missed radios delayed.

Files: dectmaster.cpp.

Products affected: All Dect devices.

Risk: Minimal.

290 - Standby Mobility Master client registration status wrong

Ticket #37597. Problem: Standby Mobility Master client registration status is not updated if primary returns and registration is closed.

Solution: Fixed.

Files: dectmobmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

289 - Switching back from MOH did not work sometimes

Ticket #37596. problem: No media after switching back from MOH

solution: fix media negotiation

files: sip.cpp

products: All devices using SIP

risks: unexpected problems with media negotiation

239 - syslog not available in viewer mode

Ticket #36691. problem: syslog not available in viewer mode (while trace is available)

solution: give access to syslog in viewer mode

files: log.xsl

products: All products

risks: no risk

253 - TLS client authentication for interoperability with OCS

Ticket #36823. problem: OCS uses TLS with mutual authentication. The current implementation does not fully support this.

solution: TLS client authentication implemented.

files: tls.cpp, tls.h, rsa.cpp

products: All

risks: very small risk of damage to the TLS state machine

271 - Trap because of NULL pointer access sometimes if outgoing call via Trunk Object fails

Ticket #37121. problem: If an outgoing call via a trunk object fails due to no channels available or another cause which would result in a retry on another interface, with DISC message (no REL which is normal), sometimes a trap can happen because of a NULL pointer access.

solution: Check for this condition added

files: pbx.cpp

products: all with PBX

risks: No risk, new code is executed only if we had a trap without the change

246 - Trap on special call disconnect collisions for ISDN-ISDN calls

Ticket #36772. problem: A trap could happen if the incoming call was disconnected before the outgoing channel was initialized

solution: Check for this situation implemented

files: media.cpp medialib.h

products: all

risks: low risk of collateral damage in the area of channel connect/disconnect

228 - Trap when changing H.323 tracing while H.323 calls are up

Ticket #36610. problem: When the tracing of the H.323 was changed while a call was up, a restart happened the next time a message was received for this call.

solution: Bug fixed, which caused writing into the wrong object

files: h323sig.cpp

products: all

risks: None

247 - UART modem IRQ not serviced

Ticket #36805. problem: modem IRQ may cause continous interrupts

solution: read MSR register

files: uart_drv.cpp

products: all products with uart_drv (3000,4001,phone_inca,1200)

risks: none

248 - UART not part of IP4001 project

Ticket #36806. problem: used in the ascom ip4001 build

solution: add uart to ip4001 project, change uart to support 32bit uart access and the fifo mode used in ip4001

files: ip4001.vcproj uart_drv.cpp

products: ip4001 ip3000 ip1200 ip1201

risks: low

287 - Unintended monitoring of calling party when automatic dialling is used

Ticket #37586. Problem: when an automatically dialled call is connected the micro is enabled on. if the calling party does not notice the short beep indicating the connection the called party may unintentionally monitor the calling party.

Solution: 1) PHONE_LOCK_AUTODIAL bit in fine grained function locking to disable the the autodial function and 2) "Administration/Phone/Preferences/Connect Autodial Call Mute" to disable the micro when the connection is established, the micro can be enabled via micro key then.

Products affected: all phones

Files: ?

Risk: none

256 - Userpart of SIP-URIs not unescaped when parameter "user=phone" present

Ticket #36847. Problem: Userpart of SIP-URIs not unescaped when parameter "user=phone" present. May keep SIP telephones from using the "DTMF Features" object.
E.g INVITE sip:%2367%23@innovaphone.de;user=phone SIP/2.0

Solution: Unescape userpart of SIP-URIs even when parameter "user=phone" is present.

Files: sipmsg.cpp

Products affected: all devices

Risk: none

291 - Workaround for OEM H.323 bug (OLC before MSD)

Ticket #37640. problem: An OEM equipment sends OLC before the Master Slave Determination is complete

solution: Handle OLC even if Master Slave Determination is not complete

files: h323ch.cpp

products: all

risks: Minimal, unlikely that other equipment is sending OLC before MSD an expect it is ignored

234 - Wrong or duplicate MWI interrogation

Ticket #36652. Problem: MWI interrogation is not enabled, but interrogation is sent, or MWI interrogation is enabled and interrogation is sent duplicate.

Solution: Implementation fixed.

Files: dtmffty.cpp.

Products affected: All dect devices.

Risk: Minimal.

V7 Hotfix 3 (09-70300.11)

310 - A PBX Standby Slave using master licenses should use licenses obtained from PBX it is backing up

Ticket #37810. problem: A standby slave obtained licenses from the master it connected to when the PBX it was backing up failed, instead of using the saved licenses from the PBX it was backing up. In a setup with all PBXs obtaining licenses from the Master this did not make a difference, there was only a problem if the PBX which was backed up used local license

solution: Use saved licenses on the standby-slave if the PBX which is backed up is not available anymore

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

327 - CallIdentifier missing in some H.323 Facility messages

Ticket #37922. problem: In some H.323 facility messages, which carried tunneled H.245 PDUs or EFC elements the CallIdentifier was missing. Apart from that it violates the standard the only known problem with this is, that these messages are not displayed in a wireshark call graph

solution: CallIdentifier added

files: h323sig.cpp

products: all

risk: Minimal risk of collateral damage

315 - CCNR/CCBS callback indication gets lost when requesting phone is busy

Ticket #37840. Description:
'A' has a CCNR/CCBS request to user B pending while speaking to 'C'.
'B' goes off-onhook/onhook, 'A' gets a 'callback-possible' indication and "1 Call pending, name-B...number-B" is displayed on display of 'A'
'A' goes onhook but the callback is not performed

Solution: perform the callback when the phone is going idle

Products affected: all phones

Files: phonesig.cpp

Risk: none

317 - Changing PBX/General options can remove automatically generated licenses

Ticket #37855. problem: With PBX OEM licenses another license is generated automatically, which allows registrations for redundancy purposes. This license is removed by accident when changing PBX/General options

solution: Do no remove this license anymore

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

318 - Configured SIP proxy in GK-IF overview not visible

Ticket #37863. problem: Configured SIP proxy in GK-IF overview not visible on interface without registration

solution: show SIP proxy

files: gk.h gk.cpp relay_ifs.xsl

products: All Gateway devices

risks: no risk

332 - DECT Master Trap during MWI update for logged-out handsets

Ticket #37964. Problem: IP1200 DECT Master reboots because of invalid pointer in anonymous handsets if Radios send an MWI ack message after handset is logged out from user with pending MWI and is switched on again.

Solution: Fixed.

Files: dectusers.cpp.

Products affected: IP1200.

Risk: Low.

326 - DECT PBX messaging

Ticket #37904. Problem: Unable to enable Dect messaging to/from PBX.

Solution: Fixed.

Files: dectmaster_if.h.

Products affected: IP1200.

Risk: Low.

324 - DSP trap fixed for IP6000/IP800 and related

Ticket #37898. problem: sometimes DSP fifo write fails after fax transmission

solution: channelcontrolmode changed to packet mode ( as in V6 )

files: ac48xdef.h ac48xlo.c userdef.h

products: ip800 ip1200 ip1201 ip4001 ip6000

risks: low

312 - Exclusive Coder G729A should also match for incoming coder G729

Ticket #37816. problem: A coder g729 received on SIP, did not match to exclusiv coder G729A if call was forwarded on H.323, even though these coders are compatible

solution: H.323 fixed to match G729 to G729A exclusive coder config

files: channel.cpp

products: all

risks: Minimal risk of collateral damage

319 - Fix: TLS socket shutdown flow with Internet Explorer

Ticket #37874. problem: In some cases IE closes TLS connections in a way that caused syslog to hang up. Therefore syslog could only be called a single time per session using HTTPS and IE.

solution: Add a special shutdown flow for IE in the TLS state machine.

files: tls.cpp, tls.h

products: all

risks: Minimal risk of collateral damage

328 - Interop tweak for MS Exchange server: "no-diverting-name"

Ticket #37925. problem: Call diversion to MS Exchange does not work since display name of diverting party is provided. MS Exchange fails to parse diversion header.

solution: New config option "no-diverting-name"

files: sip.cpp sip.h

products: All gateway devices

risks: no risk

325 - IP1200 Trap with MWI event (MSF)

Ticket #37899. Problem: IP1200 reboots because of invalid pointer in saved MWI event in DECT part. This could also occur during an idle display update.

Solution: Event handling fixed.

Files: dect.cpp.

Products affected: IP1200.

Risk: Normal.

311 - License types with exactly 32 characters, created strange characters on PBX Info page

Ticket #37813. problem: A license with a length of exactly 32 characters resulted in random characters added on the PBX Info page. This could happen if a OEM licenses was installed on a IP6000. On some browsers the PBX Info page could not displayed because of that

solution: Make sure the string is 0 terminated

files: inno_lic.cpp

products: all

risks: No risk

329 - Local Coder selection does not work after media re-negotiation

Ticket #37940. problem: When media re-negotiation happens (hold/retrieve/transfer/...) sometimes the selection of the local coder does not happen even if the remote media address is a local address.

solution: Check for local address fixed

files: h323ch.cpp

products: all

risks: Minimal risk of collateral damage

323 - Multilevel Slaves did not work

Ticket #37897. problem: In a configuration with Slave PBXs registered to another Slave PBXs (not the Master) routing of calls with unknown destinations to the next higher PBX (within the registration hierachy), did only work for one level.

solution: Routing fixed, so that these calls are routed up to the master.

files: pbx.cpp, pbx.h

products: all with PBX

risks: risk of collateral damage in the area of call routing within the PBX

330 - Multiple media descriptions were send in SDP answer in some rare cases

Ticket #37948. problem: Multiple media descriptions (m-lines) for same media type were send in SDP answer in some rare cases

solution: Put all in one media description

files: sip.cpp

products: All Gateway and PBX devices

risks: no risk

314 - OEM expects response to H.323 MSD even after MSD procedure is complete

Ticket #37836. problem: OEM equipment sends MSD message even though MSD procedure is already complete. This message is ignored because it is unexpected. OEM equipment waits for MSD-ACK

solution: Send MSD-ACK in this case

files: h323ch.cpp

products: all

risks: Minimal risk of collateral damage

320 - OEM specific alarm report for Standby Master registrations

Ticket #37878. Problem: The Standby Master registration is not deleted in the Mobility Master if the Primary Master recovers and a needless alarm message is created.

Solution: The Primary Master sends also a command to the Mobility Master to delete the Standby Master registration info if the Standby is connected.

Files: dectmaster.h, dectmaster.cpp, dectmobmaster.h, dectmobmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

321 - OEM specific GUI for Standby Master

Ticket #37881. Problem: The Standby Master Mobility Master registration status is not correctly shown if the Standby Master is not active.

Solution: Fixed in OEM specific GUI file.

Files: dectmaster.xsl(oem).

Products affected: IP4001, IP1201.

Risk: Minimal.

316 - OEM specific PBX options

Ticket #37848. Problem: Changed specifications for OEM PBX (reuse TCP, round trip delay).

Solution: Options changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

313 - Some PBX User attribts could not be modified with SOAP Admin function

Ticket #37819. problem: The PBX user attribs 'url', 'rej-ext', 'no-disc' and 'config' could not be modified with SOAP Admin call with <modify>.

solution: These attribs added to the list of changeable attribs

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

322 - Wait for ACK before starting next re-negotiation

Ticket #37882. problem: In some cases a re-INVITE with new SDP offer was send before previous INVITE transaction was completed (right after 200/OK was send, before ACK was received).

solution: Postpone new re-INVITE until ACK was received.

files: sip.cpp

products: All devices

risks: collateral damage on media negotiation process

331 - Wrong local ip addres in SDP offer in re-INVITE

Ticket #37956. problem: Boxes with multiple local ip addresses may use wrong local ip addres in SDP offer in re-INVITE

solution: Validate local ip address before sending re-INVITE

files: sip.cpp

products: All Gateway and PBX devices

risks: no risk

V7 hotfix 4 (09-70300.13)

393 - Bug on call handling on SIP/ISDN calls

Ticket #38889. problem: If the incoming SIP call was terminated before connect, a new SIP call was initiated in reverse direction.

solution: Cleanup postponed events on call release.

files: sip.cpp

products: All with SIP

risks: No risk

406 - Call Forward to trunk does not work if can-redirect is set, but redirection not possible

Ticket #39124. problem: To do redirection the destination number has to be adjusted (trunk prefix removed). This is done even if redirection is not possible. A redirection cannot be done if the call destination is a broadcast group and one member has a forward configured.

solution: Adjust number only if redirection is actually performed

files: pbx.cpp

products: all with PBX

risks: None

336 - Call waiting indication from dect handset not transmitted to SIP PBX

Ticket #37985. Problem: Call waiting indication (in ALERT) was not interworked to SIP

Solution: Interwork all FTY element in SIG_ALERT in Dectmaster

Files: dectmaster.cpp

Products affected: Dect devices

Risk: No risk

357 - call-forward was executed on pickup calls

Ticket #38214. problem: If pickup was initiated with a function key and there was a CFU set for this user, then the CFU was executed for the resulting pickup call, so the call was not indicated on the phone where the f-key was pressed, but on the cfu destination. This was very confusing for users.

solution: Do not execute cfu in this case

files: pbx.cpp

products: all with pbx

risks: Small risk of collateral damage in the area of call routing on pbx

367 - Calling party's number/name ignored when processing MESSAGE request

Ticket #38359. Problem: Calling party's number/name ignored when processing MESSAGE request.

Solution: Get calling party number/name from received MESSAGE request.

Files: sip.cpp

Products affected: All gateway devices

Risk: No risk

342 - coding of H.323 EFC wrong

Ticket #38038. problem: In all firmware versions before 8.00 the coding of the H.323 EFC elements does not conform to the standard. It cannot simply be changed, because then compatibility to innovaphone equipment with version 6.00 and 7.00 (earlier versions had no EFC) is lost.

solution: With 'config change H323 /fix 1' the default coding of the EFC elements is changed to be standard. A PBX/Gatekeeper uses innovaphone parameters to transmit this information to any registered clients. Clients adapt the coding according to the information received at registration. If the PBX/Gatekeeper is non-innovaphone the standard coding is used.

files: h323sig.cpp, h323ras.cpp

products: all

risks: Minimal risk of collateral damage

390 - Conference Interface duplicate release

Ticket #38840. Problem: Conference Interface sends duplicate release messages and it results in a trap. It occurs if conference is disconnected from MOH.

Solution: Implementation fixed.

Files: conference_sig.h conference_sig.cpp.

Products affected: All devices with Conference Interface.

Risk: Small risk of collateral damage. Only if conference is used.

370 - Dect GUI user list search

Ticket #38498. Problem: It is not possible to search for user names containing spaces in Dect user list.

Solution: URL decoding added.

Files: dectusers.cpp.

Products affected: IP4001, IP1201, IP1200.

Risk: Low.

385 - DECT MSF login

Ticket #38831. Problem: It is not possible to login to DECT MSF module with telnet.

Solution: Function signature changed.

Files: dectmsf.h, dectmsf.cpp.

Products affected: IP1200.

Risk: Low.

384 - DECT Standby-Master only starts if LDAP is synchronized

Ticket #38828. Problem: DECT Standby-Master only starts if LDAP is up and synchronized once.

Solution: Condition removed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Low.

416 - DECT Standby-Master Trap

Ticket #39190. Problem: DECT Standby-Master could trap if it is not completely configured and the Master reboots.

Solution: Fixed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Very low risk of collateral damage.

334 - Do not send RSeq in provosional response, if 100rel not supported by remote side

Ticket #37978. Problem: RSeq was sent event if 100rel not supported by remote side.

Solution: Do not send RSeq in provosional response, if 100rel not supported by remote side. Add "Require: 100rel" when sending RSeq.

Files: sip.cpp siptrans.cpp

Products affected: All

Risk: No risk

341 - DTMF during Early Media (after "183 Session Progress")

Ticket #38021. Problem: Key events after reception of "183 Session Progress" were handled as overlap dialing acc. RFC-3578, not as DTMF

Solution: Take 183 response without "P-Sig-Options: Overlap-Dialing" as Address Complete Message

Files: sip.cpp sip.h siptrans.cpp siptrans.h sipstate.cpp

Products affected: All devices

Risk: No risk

363 - EDSS1 divertingLegInformation2 not decoded

Ticket #38267. Description: Interworking for EDSS1 divertingLegInformation2

Solution: decode supplementary service facility divertingLegInformation2

Products affected: all gateways

Files: g950.cpp

Risk: none

374 - Empty facility messages sent to non-innovaphone equipment

Ticket #38636. problem: Innovaphone facilities are not sent to non-innovaphone equipment, but this filter caused empty facility messages to be sent instead of omitting these messages completely. This can confuse other equipment

solution: Don't send these messages

files: h323sig.cpp

products: all

risk: Very small risk of collateral damage

375 - Fax/Modem relay with G711u does not work

Ticket #38717. problem: Fax/Modem relay with G711u does not work

solution: Fix modem bypass payloadtype

files: ac_dsp3.cpp

products: ip22 ip24 ip28 ip302 ip305

risk: Very small risk of collateral damage

358 - Gateway: ',' not possible in registration name

Ticket #38216. problem: A ',' in registration name cause the string behind the ',' being interpreted as registration number

solution: First seperate name/number, then do urldecode

files: gk.cpp

products: all with Gateway

risks: None

360 - H.323 discovery or registration with password does not work thru ETH1 on the PBX

Ticket #38219. problem: If a GatekeeperRequest message is received on ETH1, the response is sent out using the IP address of ETH0, so the client receives a wrong IP address. The GatekeeperRequest message is used for registration with password and for Gatekeeper Discovery.

solution: Send out the IP address whiches matches to the address of the client

files: h323ras.cpp, h323.h

products: all

risk: Minimal risk of collateral damage

344 - H.323 RAS Registration failover to another address which changes local address sometimes fails

Ticket #38043. problem: A failover to another address may change the local address, because to the new address another local network interface may be used. An example for this is a failover from an address on the local ethernet to the loopback address. For the packets sent to the new interface, still the old source address was used.

solution: Initialize local address in this case.

files: h323sig.cpp

products: all

risks: Small risk of collateral damage

380 - H.450 call-completion request coding failed if destination number empty

Ticket #38796. problem: A H.450 CC request was coded wrong in case the destination number was empty. This can happen in some QSIG interworking scenarios

solution: Coding fixed

files: h450.cpp

products: all

risks: None

394 - Improve pseudo random number quality on IP6000 and IP4001

Ticket #38891. problem: The pseudo random numbers created by the kernel are highly correlated and predictable, under some circumstances.

solution: Implement the same algorithm as on the MIPS platform to get much better numbers.

files: ip6000.cpp, ip4001.cpp

products: IP6000, IP4001

risks: No risk

352 - Inbound calls on ENUM/SIP interfaces were rejected

Ticket #38154. Problem: Inbound calls on ENUM/SIP interfaces were rejected with 407 due to filter configuration (remote ip address). Filte cannot be configured for ENUM/SIP interfaces.

Solution: Use fix mask 0.0.0.0 to accept inbound calls.

Files: sip.cpp

Products affected: All gateway devices

Risk: No risk

333 - Indeterminate pickup behaviour when multiple registrations receive group indications for the same call

Ticket #37969. Description:
A phone holds multiple registrations to the same gatekeeper. All registrations (users) are members in one group and have group indications enabled for this group. The active registration has a pickup key. If there is an alerting call to some other phone in the group all registrations receive a group indication for the alerting call. If the pickup key is pressed the pickup list shows an entry for each registration. Independent of the list entry selected the call was always picked via the registration with the lowest ordinal.

Solution: fix selection mechanism, let pickup list start with the entry of active registration.

Products affected: all phones

Files: app_ctl.h, app_fkey.cpp, app_gui.cpp, app_gui.h, app_reg.cpp

Risk: none

387 - Interop problem with SoundPoint IP 501

Ticket #38835. problem: If IP501 is held and MOH is about to be played to IP501, we send reINVITE with "sendonly" to IP501. IP501 answers with 'inactive' which caused the remote party to be put on hold also.

solution: Ignore 'inactive' in SDP answer when we sent 'sendonly' in SDP offer.

files: sip.cpp

products: All with SIP

risks: No risk.

354 - IP-DECT or anlog interfaces with DTMF feature codes enabled cannot handle call-completion MWIs

Ticket #38190. problem: There is no good way how on IP-DECT or analog interfaces with DTMF feature codes enabled, MWIs because of call-completion can be handled.

solution: Ignore these MWI messges

files: dtmffty.cpp

products: all

risks: no risk

388 - IP110: cannot reach sent message screen

Ticket #38836. problem: on IP110 send message, go to main menu - messages - sent - list, try entering the message with arrow right, it is being dialed instead of showing message details

solution: fix in code

files: phone/list/phone_list_ui.cpp

products: IP110

risks: none

349 - IP150 Manufacturing: Allow to set default language

Ticket #38104. problem: default language needs the same interface as oem-code

solution: add function to commandprocessor, flashman and cpu

files: command.cpp flashman.cpp cpu.cpp flash.h cpu.h

products: all

risks: low

395 - IP230: deactivated backlight level not being restored after reset

Ticket #38901. problem: on IP230 go to phonesettings->set lcd_backlight to off and save changes by pressing the menu key. after reset, lcd-backlight is on although the phonesettings menu entry still off.

solution: the lcd-backlight level hasn't been set upon reboot. fixed in code.

files: phone/user/phone_user.cpp

products: IP230, IP240

risks: none

356 - IP24, IP302, ... trap if diverted call to analog interface is received

Ticket #38198. problem: If a diverted call, which is a call containing a leg2 facility, to an analog interface is received. The box restarts because of a NULL pointer access

solution: Fix the handling of the fact, that the analog signaling does not know leg2 facilities

files: relay.cpp

products: all with analog interfaces

risks: None

347 - IP240: directory search for a name starting with a special character other than 1st special character impossible

Ticket #38074. problem: IP240: directory search for a name starting with a special character other than 1st special character impossible. E.g. a name starting with å cannot be entered so easily, because pressing alt+a gives an ä, and changes to phone-directory search mode as expected, but does not allow further toggling to å.

solution: fixed in firmware.

files: phone/forms.h phone/forms/forms_keyboard.cpp phone/dir/phone_dir_ui.cpp

products: IP240, IP210

risks: unknown

275 - IP72: WLAN page breaks after hitting the OK button below

Ticket #37143. problem: IP72: WLAN web-page breaks after hitting the OK button below. the error message is displayed (page not found). after pressing the reload button, the page becomes readable again.

solution: fix in code

files: box/wlan_mgr.cpp box/wlan_mgr.h

products: IP72

risks: none

355 - Logging of Administration did show passwords

Ticket #38194. problem: If Administration logging was activated, any password changes were logged. This is considered a security problem.

solution: Passwords replaced by '****'

files: command.cpp

products: all

risks: Minimal risk of collateral damage

361 - Loosing registration when SIP server changes its ip address

Ticket #38228. Problem: Some SIP server may change its IP address. No DNS is done to get the new IP address.

Solution: Query DNS for new Ip address of SIP server.

Files: sip.cpp sip.h

Products affected: All devices using SIP

Risk: Low

351 - Lost 200/OK for REGISTER caused switch-over to secondary/backup SIP proxy

Ticket #38151. Problem: Missing 200/OK for REGISTER caused switch-over to secondary/backup SIP proxy. Even if 100/Trying was received.

Solution: Do not switch over to secondary SIP proxy if provosional response (100 Trying) has been received. Re-try REGISTER immediately.

Files: sip.cpp sip.h siptrans.cpp siptrans.h

Products affected: All devices using SIP

Risk: Low

392 - Mask for remote ip address filter not configurable for SIP interfaces

Ticket #38865. problem: Mask for remote ip address filter not configurable for SIP interfaces. (Default was 255.255.255.255)

solution: Make remote mask configurable for SIP interfaces.

files: sip.cpp

products: All with SIP

risks: No risk

379 - Media re-negotiation after transfer fails on SIP trunk and results in no-audio

Ticket #38781. problem: Bad SDP offer is sent out to SIP provider during re-negotiation after internal transfer

solution: Fix handling of postponed app channels (in case of request-of-offer)

files: sip.cpp sip.h

products: all with SIP

risks:

373 - Media re-negotiation with media-relay exclusive coder interface did not work

Ticket #38635. problem: Media-relay-exclusive-coder interfaces are used as connection to carriers which do not support media renegotiation. Any tranfer or other operation which results in media re-negotiation on a PBX behind such an interface should result in local media re-neg. only. This did not work for some special scenarios

fix: Handle the special scenarios

files: h323ch.cpp

products: all

337 - Memory leak if multiple registrations of MOH device to PBX

Ticket #37993. problem: Only one Registration of a MOH device is accepted by the PBX. For each additional registration attempt which is rejected some memory is lost.

solution: Free all memory in this case

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

368 - MESSAGE request rejected with 403 if registration lookup fails without trying 407

Ticket #38429. Description: If registration look-up fails for MESSAGE request, 403 is send without trying 407 first.

Solution: Send 407 in order to get the username for registration look-up.

Products affected: PBX devices

Files: sip.cpp

Risk: none

404 - missing ring voltage after few days uptime

Ticket #39110. Description: si3241 chip refuses switching of the ring voltage to the analogue port. Instead a RING_FAIL_IA interrupt is thrown.

Solution: Apply a complete re-initialisation of the specific port when RING_FAIL_IA is thrown.

Products affected: ip28 only

Risk: low

345 - mod cmd UP0 scfg ... /force <hours> does not work

Ticket #38044. Description:
"/force <hours>" shall force excution of the 'scfg' script commmand any <hours>. <hours> were evaluated correctly but the execution was not triggered.

Solution: set the execution trigger.

Products affected: all

Files: update.cpp

Risk: none

346 - MOH with random=true did not work on local resources

Ticket #38066. Problem: Local MOH-URL with "random=true" always started at beginning of file.

Solution: Honor "random=true" when using FILE_IO to access MOH file.

Files: httpclient_i.cpp httpclient_i.h

Products affected: All PBX devices

Risk: MOH and any other kind of announcement will not work (worst case)

407 - new H.323 signaling option to transmit H.245 tunneled messages in Facility only

Ticket #39125. problem: Some poor H.323 implementations require H.245 tunneled messages to be transmitted in H.225 Facility only. In the past this was combined with the h245-after-connect option (another fix for poor implementations).

solution: New option for H.245 tunneling in facility only

files: signal.h, h323.h, h323sig.cpp, dectmaster.h, dectmaster.cpp

products: all

risks: None

383 - new phone mode "Use Phone Handset like a Headset, Ingnore Hookswitch Signals"

Ticket #38824. Description:
some switchboard operators are used to work with the handset in a headset like manner. they never place the handset on hook and expect to receive inbound calls via handset instead via speakerphone.

Solution:
checkmark "Administration/Phone/Preferences/Use Phone Handset like a Headset, Ingnore Hookswitch Signals". If checked the handset will be operated like a headset, the headset port is disabled. inbound calls are accepted on the handset with the respective 'headset'-key (space (IP200a/IP240), Ok (IP230)). this key can also be used to drop the current call or to start a new call when the phone is idle. The speaker key works as usual.
This mode is not supported for the IP110, IP111 and IP150.

Products affected: all phones

Files: phone_pref.xsl app_call.cpp app_cfg.cpp app_cfg.h app_ctl.cpp app_disp.cpp app_form.cpp

Risk: minimal risk of collateral damage

398 - no CLIP on internal calls with T-COM Concept P412

Ticket #39010. Description: T-COM Concept P412 does not present CLIP information on internal calls. This phone requires CLIP information only after the first ring pause. Internal calls normally start with two short rings with a pause that is too short for sending CLIP. In this case CLIP is sent after the second ring pulse which is not accepted by this phone.

Solution: add new feature 'first ring followed by CLIP' which starts ringing with a sort of preamble that consists of 100ms ring pulse and 1second pause carrying CLIP information. Afterwars normal ringing is continued.

Products affected: all analoue gateways except ip21

Risk: none

409 - no media when retrieving a call put on hold because of a MCast Announce call

Ticket #39140. Description:
When a busy phone receives a MCast Announce call the currently active call is put on hold, the announce call is connected and becomes the active call. When the announce call is released from remote a busy tone is played until the user presses the disconnect key. Then the previously active call is retrieved and made the active call again.
The DSP/H323 channel binding was not released when holding the call and thus assigning another DSP channel on retrieve failed.

Solution: send CHANNEL_PAUSE to DSP-channel to release the channel DSP/H323 binding

Products affected: all phones

Files: phone_dir_ui.cpp

Risk: low

340 - no ringing voltage after few days uptime

Ticket #37999. problem: ringing voltage is not beeing generated after few day uptime.

solution: In case of a RING_FAIL interrupt signaling perform an automatic 'ireset' command to the gateway.

files: si3241_drv.cpp si3241_drv.h

products: ip28

risks: minimal, this automatic has already been proven in earlier firmware verions.

338 - No-Way speech if call-transfer done by H.323 slowstart endpoint on a call routed thru multiple PBXs

Ticket #37997. problem: If a slowstart H.323 endpoint (e.g. XCAPI) initiates a call transfer which was routed to this endpoint from another PBX, the is no speech connection after the transfer.

solution: Media negotiation fixed for this case

files: h323ch.cpp, h323ch.h, h323sig.cpp, pbx.cpp

products: all

risks: Minimal risk of collateral damage

408 - OEM specific broadcast message behavior

Ticket #39130. Problem: Broadcast messages should not be sent to radios which connection type is not static.

Solution: Condition for sending broadcast messages added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

401 - OEM specific DECT connection messages

Ticket #39092. Problem: No OEM specific messages are sent to DECT if connection changes from Master to Standby-Master and vice versa.

Solution: Implementation fixed.

Files: dectradio.h, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

402 - OEM specific Dect duplicate endpoint message option

Ticket #39096. Problem: Location cancel command is sent to radios if a conflict is recognized. Dect message option is missed.

Solution: Message option added.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

369 - OEM specific Dect endpoint idle display

Ticket #38478. Problem: Idle display is not correct if no redundant trunk is configured and all primary trunks are down.

Solution: Implementation fixed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

350 - OEM specific event handling for info messages

Ticket #38138. Problem: Signaling info messages are forwarded in Master without keypad info in a OEM specific case.

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

400 - OEM specific GUI redundant trunk state

Ticket #39081. Problem: Redundant trunk state in Standby Master mode is wrong.

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

365 - OEM specific GUI trunk state

Ticket #38285. Problem: Trunk state in Standby Master mode is wrong.

Solution: Implementation fixed.

Files: dectmaster.h.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

382 - OEM specific location response message

Ticket #38821. Problem: Delete command is sent to radios if an endpoint in location restore command is unknown by master. A location cancel command should be sent instead.

Solution: Implementation fixed.

Files: dectmaster.cpp, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

364 - OEM specific trunk down handling

Ticket #38284. Problem: Call is not rejected if trunk is down.

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

353 - out of memory trap when firmware upload fails (for example because of a flash problem)

Ticket #38180. Description: the data to write is kept in a packet which is only freed when an upload is started. After a succcessful upload the packet is empty but in case of a premature abort the packet may hold a large amount of data

Solution: delete data at time of error, not only before next upload

Products affected: all

Files: flash_firmware.cpp

Risk: none

378 - PBX SOAP SendMessage: Not possible to send messages to users at other PBXs

Ticket #38774. problem: When trying to send messages with SOAP/UserMessage to destinations at other PBXs, the call used to transmit this message was sent without destination address to the other PBX and could not be terminated there.

solution: Use right destination address

files: pbx_xml.cpp

products: all with PBX

risks: Minimal risk of collateral damage

376 - PBX Twin Phone feature did not work together with group indications

Ticket #38758. problem: On a PBX user with group indications incoming calls were not only sent to the busy phone (in case there was a busy phone), but to the other phones as well.

solution: Do not handle calls to the phone used to send group indications as normal calls

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

359 - PBX Waiting: DTMF destination using '.' to match any digit combined with destination name did not work

Ticket #38217. problem: A destination name configured in a Waiting queue for received DTMF with '.' used in the to be mached DTMF digits did not work. The name was not dialed, but only the entered digits

solution: Dial name in this situation

files: pbx_wait.cpp

products: all with PBX

risks: None

413 - PBX: External calls not released automatically anymore

Ticket #39161. problem: In v6 phones released a call which was connected after a 2s timeout after receiving disconnect. This way a busy tone was played for 2s only. In v7 we had to change this, because we needed better control from the TAPI over the phone.

solution: Automatic disconnect now implemented in the Trunk object

files: pbx_trunk.cpp, pbx_trunk.h

products: all with PBX

risks: Very low risk of collateral damage

343 - PBX: Minimum of No Answer Timeout reduced from 4s to 2s

Ticket #38040. problem: For some special applications a CFNR timeout of 4s is too long.

solution: Limit reduced to 2s

files: pbx.cpp

products: all with PBX

risks: No risk

414 - PBX: Reject External call rejects calls diverted with CFNR as well

Ticket #39165. problem: If the Reject External Calls flag is set at a user, calls which are diverted to this user with CFNR are rejected as well.

solution: Fix code so that checking of internal number works

files: pbx.cpp

products: all with PBX

risks: None

381 - PBX: Restart when trying to add a node object without name

Ticket #38805. problem: If a Node object is added without name a restart happens.

solution: Display error if no name is configured for node

files: pbx_admin.cpp

products: all with PBX

risks: None

415 - Phone shall not play a local busy tone after another inband tone has been played already

Ticket #39185. problem: V7 phones do not automatically release a call which was connected after a 2s timeout after receiving disconnect. The PBX releases the call after 2 seconds now. As a side effect after 2 seconds busy tone from remote the local busy tone was played for two more seconds.

solution: Do not play a local busy tone if a disconnect was received before the release.

files: app_call.cpp

products: all phones

risks: Very low risk of collateral damage

386 - port init confuses

Ticket #38833. Problem: Port initialization confuses depending on startup delay between the driver entities.

Solution: Solve this dependency

Files: si3241_drv.cpp

Products affected: ip28 only

Risk: low

396 - possible null pointer access in pbx_dtmf/dirsearch with btree::get_count

Ticket #38941. Description: pbx traps with parallel directory search calls, if one of those calls currently has no search_results and a null pointer is accessed.

Solution: check for null pointer

Products affected: all pbx devices

Files: pbx_dirsearch.cpp, pbx_dtmf.cpp

Risk: none

366 - PPP config shall exclude PRI interfaces without HDLC capability

Ticket #38306. Description: Currently all PRI ports can be configured for PPP connections. This is confusing on an IP2000 (no HDLC support at all) or an IP3000 without HDLC chip.

Solution: check HDLC/CHANNELS >= 1

Products affected: all

Files: ip_config.cpp

Risk: none

335 - Send 180/Ringing with Alert-Info instead of 182/Queued on Call-Waiting condition

Ticket #37980. Problem: Some SIP devices don't start local ringback tone on reception of 182/Queued.

Solution: Do not send 182/Queued. Send 180/Ringing with "Alert-Info: <urn:alert:service:call-waiting>" instead.

Files: sip.cpp siptrans.cpp

Products affected: All

Risk: SIP endpoints which processed 182/Queued correctly my not recognize Alert-Info, but at least they will ring (without call waiting indication)

411 - sporadic assert in http.cpp

Ticket #39152. problem: sporadic assert in http.cpp

solution: add debug to http.cpp to find out the details

files: http.cpp
products: all

risks: low

412 - sporadic fifo problem on ac_dsp3

Ticket #39153. Description: Sometimes the dsp fifo comes out of sync.

Solution: debugs added, assert added to find out more details. Update to DSP code 560.14 may help according to audiocodes

Products affected: ip22 ip24 ip28 ip302 ip305

Files: ac_dsp3.cpp

Risk: low

371 - src/dst port are put into src/dst ip address of tcp/udp packets coming from 127.x.x.x for wireshark pcap packets

Ticket #38623. Problem: Wireshark can't differ different calls with local addresses.

Solution: local ip address bytes 2 and 3 used for port

Files: debug.cpp, debug.h, udp.cpp, tcp.cpp, tls.cpp

Products affected: all

Risk: Low.

403 - Strange characters in device name if too many öäü... are used

Ticket #39109. problem: A buffer definition has not taken into account, that a non-ascii7 character takes 6 bytes if stored url-encoded utf8

solution: Buffer size adjusted

files: command.cpp, command.h

products: all

risks: none

389 - T38 capability indication at call setup (Interop Cirpack)

Ticket #38837. problem: Initial SDP offer lists audio AND t38. Both with media port. Cirpack does not switch over to t38 with reINVITE. Which is required by innovaphone.

solution: List t38 in initial offer with port=0. Means t38 is a supported capability.

files: sdpmsg.cpp

products: All with SIP

risks: May trouble other equipment

399 - T38 NAT Problem

Ticket #39074. problem: NAT connection is not established if ip24 bedind the NAT doesnt start sending data.

solution: Send No-Signal indications every second if no fax signal is present.

files: ac_dsp3.cpp

products: ip22 ip24 ip28 ip302 ip305
risks: low

405 - T38 NAT Problem

Ticket #39111. problem: NAT connection is not established if ip800/6000 behind the NAT doesnt start sending data.

solution: Send No-Signal indications every second if no fax signal is present.

files: ac_fax2.cpp ac_fax2.h

products: ip800 ip6000
risks: low

410 - too many 'No Media Data Received' events

Ticket #39143. problem: In special traffic cases or if a call was up very short it is normal that no media data is received during the call, still a 'No Media Data Received' event was generated

solution: Generate 'No Media Data received' event if for more then 4s no data is received on an connected call

files: medialib.h, media.cpp

products: all

risks: None

377 - Trap in SIP message construction

Ticket #38771. problem: Trap when SIP message with Content-Type header is constructed

solution: Initialize unused members to zero

files: sipmsg.cpp

products: all SIP

348 - Trap when disconnecting while blind transfer pending

Ticket #38100. Problem: Trap after onhook at dect handset while blind transfer is ongoing (ringing replacement call)

Solution: Fix handling of onhook at dect handset

Files: dectradio.cpp

Products affected: All Dect devices

Risk: Low

339 - Trap while processing SUBSCRIBE(reg)

Ticket #37998. Problem: Trap while processing SUBSCRIBE(reg).

Solution: Fixed

Files: sip.cpp

Products affected: All PBX devices

Risk: No risk

397 - Trap, Voicemail <pbx-im> causes trap

Ticket #39002. problem: Voicemail <pbx-im> causes trap

solution: set fty_event_innovaphone_message.next to '0'

files: pbx_vm.cpp

products: All PBX products

risks: No risk

372 - Upload GUI css oem change

Ticket #38634. Problem: Upload Firmware/Bootcode progress percent is not independent for oem products.

Solution: HTML changed.

Files: up_boot_v7.htm, up_prot_v7.htm, *.css (OEM).

Products affected: All products.

Risk: Low.

391 - VM trace messages without trace flag set

Ticket #38857. problem: Voicemail trace messages not suppressable

solution: suppress trace outputs

files: pbx_vm.cpp, vm_script_if.cpp

products: All PBX products

risks: No risk

362 - Web GUI shall use a relative reference ("//...") instead of an absolute URI ("http://...) for a link to an extenal box

Ticket #38252. Description: If a box is accessed via https an access to another box via the GUI should also use https.

Solution: use releative references, i.e. leave off the scheme

Products affected: all

Files: alarm_log.xsl fault_details.xsl fault_log.xsl dhcp_leases.xsl

Risk: none

V7 hotfix 5 (08-70300.14)

420 - Avoid re-negotiation on incoming call leg after connect on secondary registration

Ticket #39339. Problem: On a call to a multi-registered user the caller gets the SDP of the primary reg in 200/OK. If call was answered on a secondary reg, a re-negotiation follows the 200/OK.

Solution: Postpone initial 200/OK until SDP channels from secondary registration available.

Files: sip.cpp

Products affected: PBX

Risk: Collateral damage on media negotiation

437 - Better Diagnostics for Free Error restarts

Ticket #39556. problem: The cause for a restart because of free error was very hard to find.

solution: Trace last free

files: os.cpp

products: all

risks: None

438 - BYE was not sent when DNS resolving failed

Ticket #39561. Problem: BYE must be sent to the Contact address of the received final INVITE response. The the domain name of the Contact-URI cannot be resolved, the BYE was not sent at all.

Solution: Send BYE to address/port where the original INVITE was sent to.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

425 - Damaged authorization header in ACK

Ticket #39428. Problem: Authorization header in ACK is be damaged in case a PRACK caused digest re-calculation.

Solution: Keep authorization header from INVITE for ACK, even if PRACK needs digest re-calculation.

Files: siptrans.cpp sip.cpp

Products affected: All SIP devices

Risk: Authorization problems

429 - DECT null pointer trap

Ticket #39472. Problem: Null pointer trap in radio call object.

Solution: Null pointer check added.

Files: dectradio.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

422 - deprecated default ToS Value 0x10 for RTP even after factory reset

Ticket #39373. problem: even after factory reset a TOS value 0x10 remains configured because it's defined in the builtin config file of the firmware.

solution: in all config.h files remove "/priority-tos 0x10" from the "start ip IP0 ..." command.

files: config.h

products: all

risks: None

436 - Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function

Ticket #39545. Description: GUI Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function.

Solution: Correct, add missing entries

Products affected: ip28

Risk: none

424 - Enbloc dialing fix for DECT

Ticket #39425. Problem: Enbloc dialing does not work if first digit(s) match suppl. service.

Solution: Condition added how to send the digits in the sig event info message to the next module if no suppl. service matches.

Files: dtmffty.cpp.

Products affected: All products.

Risk: Minimal risk of collateral damage.

433 - German/Swedish (åäöü) characters in HTTP Client

Ticket #39540. Problem:German/Swedish (åäöü) characters in HTTP Client cannot be configured

Solution: convert http form data from UTF8 to ISO-Latin1

Files: httpclient_config.cpp

Products affected: All

Risk: Low

440 - GN9120 DECT/DHSG Headset - No Media when a waiting call is accepted after the active call has been released by remote party

Ticket #39583. problem: Two seconds after the active call has been released by the remote party the phone rings to indicate the waiting call. When the active call was connected to the headset one or more RING commands are sent to the headset. When the call is accepted at the phone or the headset a TALK command is sent to the headset but the media strem between headset and phone is not (re)established. This happens only with the GN9120, not with the GN9350.

solution: send an IDLE command before RING.

files: keys_gen.cpp

products: all Phones with an active GN9120

risks: None, the additional command is sent only in this special situation

426 - H.323 NAT did not forward RAS.NonStandardMessage and failed to decode EFC

Ticket #39438. Problem: H.323 NAT did not forward RAS.NonStandardMessage and failed to decode well formed EFC.

Solution: Forward RAS.NonStandardMessage and decode well formed EFC elements.

Files: nat_h323.cpp

Products affected: All routing devices doing H.323 NAT

Risk: Non-standard EFC is not forwarded anymore (from older innovaphone software)

421 - Incoming re-INVITE for a no-longer-existing call was handled like INVITE

Ticket #39372. Problem: Incoming re-INVITE for a no-longer-existing call was handled like INVITE. A new call was (re-)created.

Solution: Reject re-INVITE with "481 Call Leg/Transaction Does Not Exist".

Files: siptrans.cpp sip.cpp

Products affected: All SIP devices

Risk: No risk.

417 - Missing attribute "entity" in dialog information XML

Ticket #39229. problem: Mandatory attribute "entity" to dialog information XML (RFC-4235) was missing.

solution: Add mandatory attribute "entity" to dialog information XML.

files: sip_dialog_info.cpp

products: All PBX with SIP

risks: None

428 - No Early-Media if doing rerouting from physical (ISDN) interface to physical interface in non-EFC cases

Ticket #39470. problem: If an incoming non-efc call routed to an ISDN interface and then has to be re-routed to another ISDN interface (down, busy, ...), there is no early-media.

solution: Fix H.323 media negotiation to support early-media in this case

files: h323ch.cpp

products: all

risks: Small risk of collateral damage

431 - OEM specific sending of non-call facilities should disconnect TCP

Ticket #39478. problem: After sending of OEM specific non-call facility the TCP connection was not cleared

solution: clear TCP connection, use SIG_REL to indicate TCP cleared

files: h323_tbl.tbl, h323sig.cpp, h323sig.h

products: all

risk: Minimal, not used except for OEM

418 - Paramter "rport" in Via header in 200/OK for REGISTER causes trouble

Ticket #39276. Problem: Paramter "rport" in Via header in 200/OK for REGISTER makes the SIP interface re-calculate its Contact-URI. If "rport" comes without "received" parameter, the SIP interface will use 0.0.0.0 as local address in all Contact-URIs.

Solution: Check for "received" parameter.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

430 - PBX User Interface: Only 8 filters are supported for CF, but more could be entered

Ticket #39476. problem: On PBX Edit CF User interface more then 8 filters could be entered, even if only 8 aree supported

solution: User interface fixed to allow 8 only

files: pbx_edit_cfs.xsl

products: all with PBX

risks: None

435 - phones get confused within their 'missed calls list'

Ticket #39543. Description: phones with internal 'missed calls list' obviously get confused when the gateway sends CLIP multiple times. Sometimes calls are counted multiple times.

Solution: Do not send CLIP multiple times.

Products affected: ip28 only

Risk: low

427 - RTP not turned off with H.323 channel pause on IP-DECT

Ticket #39449. problem: A H.323 channel pause received by an IP-DECT system, did not turn off the RTP media. If a PBX used this for Hold signaling it could disturb the media receiving on the endpoint initiating the hold.

solution: Turn off RTP when receiving pause

files: h323ch.cpp

products: all

risks: Low risk of collateral damage

439 - Trap if diverted call (with diverting leg2 info) received on ISDN with EDSS1

Ticket #39573. problem: If a call is received on an ISDN interface with EDSS1 protocol which contains a diverting leg2 info facility (the call was diverted), a traps happens because of duplicate free of memory. Collateral Damage of http://wiki.innovaphone.com/index.php?title=Support:DVL-Hotfixes#EDSS1_divertingLegInformation2_not_decoded

solution: dupilcate free of memory removed

files: q950.cpp

products: all with ISDN interfaces

risks: None

434 - Trap in httpclient during file io access if no CF card is present

Ticket #39541. Problem: Traps e.g. during music on hold

Solution: remove file_get instance after application confirms the close.

Files: httpclient_i.cpp

Products affected: All

Risk: Low

419 - Windows Mobile 6.1 SIP Client cannot cancel a call

Ticket #39335. Problem: Windows Mobile 6.1 SIP Client cannot cancel a pending INVITE transaction if no 100/Trying was sent before 180/Ringing. Even if 180/Ringing was sent in time (200ms).

Solution: Always send 100/Trying immediately when user agent "RTC/1.5" is calling.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk

432 - Wrong branch parameter in Via header on ACK for 2xx response

Ticket #39536. Problem: According to RFC-3261, the branch value in an ACK for a 2xx response must be different from the value in the INVITE.

Solution: Calculate new branch value for ACK after 2xx response.

Files: siptrans.cpp

Products affected: All SIP devices

Risk: No risk.

V7 hotfix 6 (09-70300.16)

524 - AD Replication Configuration: Enable checkmark not always reflectig persistent config

Ticket #41921. Problem: The enable checkmark was cleared volatile when an error condition was detected within the replication configuration. The admin couldn't see that it was still enabled in the persistent config.

Solution: Auto-Stopping now acts on an own volatile flag instead of on enable flag.

Files: ldap*

Products: PBX, DECT Products

Risk: No risk.

516 - add 'rebootn' and 'irebootn' command to make bootcode activation in update process unique in all versions

Ticket #41739. problem: the only method for bootcode activation working for all devices and bootcode versions is the 'reboot' command (as far as it is supported by the running firmware). For straightforward update scripting the commands 'rebootn' and 'irebootn' are required.

solution: add the commands

files: command.cpp

products: all

risks: None

486 - After power up alt-gk was used instead of primary with IP-DECT

Ticket #40845. problem: After power up the dectmaster registered the endpoints to the alternate not primary gk as expected. Usually this does not cause a problem, because it should switch over to the primary if the alternate does not respond. But there is a delay.

solution: Fix initialization

files: h323sig.cpp

products: all

risks: None

496 - always display full number/name of 1st calling party on pickup key if requested via configuration

Ticket #41068. problem: specially when "Administration/Phone/Preferences/Display Name on Pickup/Partner Key" is checked the calling party number may often be truncated or left off if too much space is needed to display the called parties.

solution: the new checkmark "Administration/Phone/Preferences/Keep Calling Party Info on Pickup Key" forces truncation of called party info instead of the calling party.

files: app_disp.cpp, app_cfg.cpp, app_cfg.h, phone_pref.xsl

products: all phones

risks: None

482 - assert with simultaneous write and read access to a cf file

Ticket #40759. problem: if one process writes a file and another process reads this file and the current filesize is a multiple of the cluster size and the next cluster has been alread allocated by the first writing process, the reading process might send a cf_read_event with 0, which causes a trap

solution: check for 0 in cf_read_event and handle this like eof

files: fat32.cpp

products: all devices with cf card

risks: minor, as this constelation is extremly rare

509 - Bad Noise Level in RTP Comfort Noise Packets

Ticket #41388. Problem: CN packets contained "0" as noise level, but the noise level is expressed in -dBov which means maximum noise.

Solution: Change noise level value into "127".

Files: media.cpp

Products: PBX voice mail

Risk: No risk.

490 - Changing LDAP server login credentials must force clients to re-login

Ticket #41024. Problem: LDAP server credential administration did not affect existing server connections.

Solution: Apply credentials to existing server connections. Tear down connections, if required.

Files: ldap/*

Products affected: All PBX, Dect Products

Risk: No risk.

448 - config option to force display of alerting calls both on partner key and on pickup key

Ticket #39861. problem: alerting calls are not displayed on a pickup key if a partner/park key associated to a display line is defined for the alerting party. some customers want such calls to be displayed as well on partner/park key as on pickup key.

solution: implement option "config add PHONE APP /pick-partner"

files: app_cfg.cpp app_cfg.h app_disp.cpp

products: all phones

risks: None

525 - Config Template Objects not replicated to slave PBXs

Ticket #41925. problem: The node/loc attributes of a Config object were set to 'root' which prohibited replication to slaves with a PBX filter.

solution: Don't set node/loc attributes

files: pbx_edit_config.xsl

products: All with PBX

risks: Could be that setting loc/node to root was good for something

507 - configurable TCP send/recv window size to prevent running out memory with a big number of parallel http sessions

Ticket #41346. problem: boxes with limited DRAM like ip302/ip305 may run out of memory when processing a big number of parallel http put requests directed to CF card. This may happen for example when a scfg command is performed by a lot of update clients at the same time. Because of the low CF card speed most sessions cannot access the card for a while and will buffer a full window.
A window size lower than 65535 (the current default) did not work stable with the apache http server, thus the default cannot be changed.

solution: for custumers using a small box as update server for a big number of clients but do not access another http server the window can be configured.
config add IP0 /tcp-bs-small <window-size>
defines the window size for normal (non-NAT) sockets,
config add IP0 /tcp-bs-large <window-size>
defines the window size for NAT sockets.
The limits for both values are (2 * 1024) <= <window_size> <= (128 * 1024), the default for both values is 65535 as before.

files: tcp.cpp tcp.h ipproc.cpp ipproc.h ip_config.cpp ip_config.h

products: all

risks: None (as long as the default is not changed, depending on http server otherwise).

497 - DGPN Mapping Produced Nonsense Numbers

Ticket #41102. Problem: DGPN mapping produced nonsense numbers

Solution: Apply DGPN mapping only, if map is really suitable

Files: gk.cpp

Products affected: All Gateway products

Risk: No risk.

450 - Dial funktion key shall provide a pause character for DTMF tone timing

Ticket #39932. problem: The "Send in Active Call" checkmark of a dial function key permits to send DTMF digits in an already established call. The time between two digits is fixed to 200 milliseconds which is too fast for some applications.

solution: a comma (',') inserted between the digits represents a delay of 300 milliseconds. "1,2" means that '2' is sent 500 milliseconds after '1', "1,,,2" delays '2' for 1100 milliseconds.

files: phonesig.cpp

products: all phones

risks: None

472 - Dialing from unknown reg for deployment did not work with CFU set at target user

Ticket #40278. problem: A CFU was executed even if the user was dialed from an unknown registration. This prohibited that the unknown registration was assigned to this user.

solution: Do not execute CFU for calls from unknown registrations

files: pbx.cpp

products: all with PBX

risks: None

479 - DTMF detection did not work randomly

Ticket #40666. problem: A config parameter for the DSP channel was uninitialized, which caused DTMF detection not work randomly

solution: Initialize all parameters

files: ac_dsp2.cpp

products: IP6000, IP800

risks: none

489 - Duplicate execution of interface maps in case of setup without digits

Ticket #40982. problem: Interface maps are executed with the setup arriving AND with the first digit received. If a CDPN map is configured without digit to match, this could result in the same prefix being added twice

solution: Adjust output of the map on second execution by the output generated with the first execution

files: relay.cpp

products: all gateway products

risk: Small risk of collateral damage

480 - Echo canceling sometimes not active on IP72

Ticket #40677. problem: Echo canceling not active on IP72 is callmanage is used

solution: Prevent too frequent initialisations of the echocanceller
files: omap_codec.cpp

products: ip220,ip72

risks: Low risk of collateral damage

493 - Forward last diverting information (not the first)

Ticket #41036. Problem: If a several diverting information elements arrive with a call at the gateway, only the first was mapped and forwarded.

Solution: Map and forward last diverting information.

Files: relay.cpp

Products: All Gateway devices

Risk:

452 - G711u exclusive doesn't work with dtmf featurecodes/directory search/icp pbx objects

Ticket #39986. problem: if user has G711u exclusive, the above pbx objects won't work as there is no G711u MOH.

solution: instead of MOH, a dialing tone is used now. After receiving first digit, tone is stopped.

files: pbx_dirsearch.cpp/h, pbx_dtmf.cpp/h, pbx_icp.cpp/h

products: all PBX devices

risks: minor

474 - H.323 slowstart media renegotiation fails if initaited before the previous neg. completes in remote media case

Ticket #40314. problem: In case of remote media (e.g. the IP-DECT master is doing this) media-reneg. fails if previous media neg. was not completed. Results in IP-DECT no media calls for special supplementary services on some third party PBXs

solution: Fix media neg.

files: h323ch.cpp

products: all

risks: None

522 - httpclient does not flag EOF in last nonempty data packet when reading a file from local CF card

Ticket #41885. problem: When reading a file from a WEB server the httpclient::recv_data() callback indicates the last packet of data by setting packet::code = 1. When reading a file from local CF card packet::code of the last packet is zero as for all other packets. some clients (for example the update process) fail if this (historical) EOF convention is not kept.

solution: fix in code

files: httpclient_i.cpp

products: all

risks: None

449 - ICMP Address mask requests shall be ignored

Ticket #39878. problem: ICMP Address mask requests as defined in RFC 950 are not really used by current devices and need not to be responded. Some security check programs complain if responses are sent on such requests.

solution: ignore ICMP Address mask requests

files: ipproc.cpp

products: all

risks: None

453 - icp traps with after dialed digits

Ticket #40006. problem: if user does not dial the whole number at once but digit by digit, the box traps.

solution: changed digit handling

files: pbx_icp.cpp/h

products: all PBX devices

risks: none

499 - immediate diversion activation after receiving icp activation code

Ticket #41144. problem: incoming icp activate only activates diversion if server acknowledges connection

solution: already activate diversion after receiving activation call

files: pbx_icp.cpp

products: all devices with pbx

risks: no

461 - IP-DECT & SIP: Distinctive Ringing support for several OEM PBX

Ticket #40145. Problem: Different Alert-Info headers from several OEM PBX are not recognized by SIP and passed through to the DECT system.

Solution: Decode Alert-Info header and pass through call-type information.

Files: sip.cpp dectmaster.cpp

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

521 - IP-DECT debug output

Ticket #41881. Problem: Option number is missed in debug output.

Solution: Option added.

Files: dectlocalusers.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

527 - IP-DECT Delay on incoming call as a configurable parameter

Ticket #42013. Problem: Delay on incoming call as a configurable parameter is missed.

Solution: Option added.

Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

529 - IP-DECT delayed user location registrations for trunks

Ticket #42053. Problem: There must be some delay in sending user location registrations to trunks to prevent CPU overload.

Solution: Function changed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage. OEM device only.

457 - IP-DECT GUI radio list sorting by Id

Ticket #40117. Problem: Radio list can't be sorted by radio id.

Solution: Feature added.

Files: dectmaster_radios.xsl (OEM).

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

459 - IP-DECT GUI user list sorting

Ticket #40133. Problem: User list can't be sorted by Rights, Display, IPEI or Registration.

Solution: Feature added.

Files: dectusers.cpp, dect_users_right.xsl (OEM).

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

445 - IP-DECT master crash if config update and anonymous endpoints

Ticket #39765. problem: A crash because of NULL pointer access could happen if a config update was done while anonymous endpoints exist

solution: Code fixed

files: dectusers.cpp

products: all ip-dect

risks: Severe risk of collateral damage

465 - IP-DECT Master handover canceled statistic

Ticket #40201. Problem: Dect Master handover canceled statistic is not correct.

Solution: Fixed.

Files: dectmaster.cpp

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

466 - IP-DECT monitor interface for OEM modules

Ticket #40202. Problem: The IP address of the Standby Master is needed in OEM modules.

Solution: New argument was added in monitor function interface and monitor function calls were updated.

Files: dectmaster_if.h, dectmaster.h, dectmaster.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

470 - IP-DECT Null pointer trap

Ticket #40271. Problem: Null pointer trap in dectradio.

Solution: Null pointer check added.

Files: dectradio.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

484 - IP-DECT Null pointer trap in Master (OEM)

Ticket #40779. Problem: Null pointer trap in dectmaster with immediately send enbloc setup in OEM case.

Solution: Null pointer check added.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

488 - IP-DECT Null pointer trap in Master with anonymous handsets

Ticket #40947. Problem: Null pointer trap in dectusers with anonymous handsets.

Solution: Null pointer check added.

Files: dectusers.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

487 - IP-DECT OEM module Mobmaster Master/Standby-Master login

Ticket #40943. Problem: Users are missed if Master and Standby-Master are connected at the same time.

Solution: Function fixed.

Files: dectmobmaster.h, dectmobmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

505 - IP-DECT OEM data calls unavailable

Ticket #41334. Problem: OEM data calls are unavailable if no trunk is alive, but it should be independent.

Solution: Call accept condition changed.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage. Only for OEM products.

485 - IP-DECT OEM module debug output trap

Ticket #40790. Problem: Trap during debug output in OEM module with many users.

Solution: Function changed.

Files: dectmobmaster.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

504 - IP-DECT OEM module Mobmaster missing endpoints

Ticket #41333. Problem: Endpoints are missed if at least two Mobmaster are used.

Solution: Clean cache function fixed.

Files: dectmobmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage. Only for OEM products.

494 - IP-DECT OEM remove endpoint data command for debugging

Ticket #41062. Problem: New command to remove endpoint data for debugging is needed.

Solution: Command added, obsolete command removed.

Files: dectradio.h, dectradio.cpp, dectlocalusers.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

456 - IP-DECT OEM specific idle display

Ticket #40115. Problem: Handset idle display does not work correctly in OEM version after handset restart.

Solution: Fixed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: No risk of collateral damage, OEM only.

498 - IP-DECT OEM trunk state after config change

Ticket #41125. Problem: The initial trunk state is not correct after configuration change without reboot. Unnecessary location registration messages are sent.

Solution: Initial trunk state fixed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage. OEM firmware only.

492 - IP-DECT OEM trunk status inquiry

Ticket #41026. Problem: Status inquiry is lost if a released call is used.

Solution: Function fixed.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

528 - IP-DECT trunk down events

Ticket #42051. Problem: Diagnose events are missed if trunks are down.

Solution: Diagnose events added.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

423 - IP-DECT: Allow overlap numbers

Ticket #39386. Problem: Some (non-innovaphone) PBX support overlap numbers (e.g. 40 and 400). The IP-DECT did not support this.

Solution: Allow overlap numbers.

Files: dectusers.cpp.

Products: All IP-DECT devices.

Risks: Low risk of collateral damage.

455 - IP-DECT: Delete buttons for anonymous subscriptions in GUI

Ticket #40112. Problem: Delete buttons disappear from all anonymous subscriptions in GUI when pressing delete on one subscription.

Solution: Fixed.

Files: dectunknown.xsl.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

491 - LDAP server user account GUI doesn't accept 5 entries

Ticket #41025. Problem: LDAP Server administration malfunctioned when entering more than three accounts.

Solution: An internal buffer's dimension was too small, causing neglection of input. The buffer size was increased.

Files: ldap/*

Products affected: All PBX, Dect Products

Risk: No risk.

463 - LDAP, ASN.1-Encoding failed for objects with ~100 attributes

Ticket #40171. Problem: Node objects with approx. 100 rep-attributes weren't replicatable.

Solution: Fix Asn.1 encoding

Files: ldapsrv.cpp, ldapdir.cpp

Products affected: All PBX products

Risk: none

495 - LDAP-Expert-View with unknown Login

Ticket #41065. Problem: Editing under LDAP/Expert by an IE ended in a login loop.

Solution: switch to mod_cmd_login.xml

Files: ldap/flashdirui*.xsl

Products affected: All PBX, Dect Products

Risk: No risk.

454 - Memory Leak when sending non-call facilities with OEM specific H.323 version

Ticket #40108. problem: A call object was not deleted when sending non-call facilities, in case of "reuse-tcp"

solution: Handle this case to delete the call object

files: h323sig.h, h323_tbl.tbl

products: all

risks: None

500 - Misrouting of GRE packets

Ticket #41214. Problem: NAT of GRE session may fail due wrong socket selection for incoming GRE packet.

Solution: Check local address of socket object.

Files: ipproc.cpp

Products: All NAT devices

Risk: No risk.

517 - new 'name' metacharcter string #n in URL parameters in update commands

Ticket #41741. problem: files created for example via "mod cmd UP0 scfg <url> ..." may be identified by hardware number ('#h'), mac address (#m) or ip-address (#i) provided in <url>. sometimes these informations are not remembered when needed. The new '#n' metacharcter string is replaced by <device-name>.
<device-name> is the name configured under "Configuration/General/Admin/Device Name" with space, control and punctuation characters except '-' replaced by '_'.
If there is no name configured #n is replaced by "noname".
Because <device-name> is not necessarily unique it should only be used in combination with one of the unique identifiers #h, #m or #i.

solution: expand #n

files: update.cpp

products: all

risks: None

523 - New interoperability option "/take-sendonly-as-inactive"

Ticket #41886. Problem: Some SIP phones send SDP offer with "sendonly" and expecting the PBX to play MOH to the remote party. They actually don't want to send no RTP itself although explicitely indicated. MOH is only started by the PBX in case of "inactive".

Solution: New interoperability option "/take-sendonly-as-inactive". With this option set, "sendonly" is handled as "REMOTE-HOLD". Without, it is handled as "HOLD-NOTIFIC".

Files: sip.h/cpp

Products: All SIP devices

Risk: No risk.

471 - No authorization was done on de-regstration on SIP client interfaces

Ticket #40275. Problem: If a SIP endpoint de-registers before shutdown a 401 was not handled.

Solution: Keep REGISTER client transaction in order to handle 401 response.

Files: sip.cpp/h

Products: All SIP devices

Risk: Collateral damage on handling of REGISTER responses.

477 - No media if Transfer done by SIP endpoint from H.323 to H.323 endpoint if SIP ep has done Hold/Retrieve

Ticket #40600. problem: Call from H.323 ep to SIP, SIP does HOLD/RETRIEVE and the transfer to another H.323 ep -> No media

solution: Fix media negotiation

files: h323ch.cpp

products: all

risks: small risk of collateral damage

220 - no ringing voltage after few days uptime

Ticket #36445. Description: gateway in 'alerting' condition but no ringing voltage. After power-cycle or softreset this situation is cleared.

Solution: Chipset reset in case of RING_FAIL_IA signaling from Slic Chip as soon as all other ports gone on-hook.

Products affected: ip28

Risk: mid, does not occur in normal cases. Occurence yet not clear.

515 - Number/Name update during call did not work

Ticket #41733. Problem: Number/Name update during call did not work, since check for extension "from-change" did not work if multiple Supported headers were present.

Solution: Fix parsing of multiple Supported headers.

Files: sipmsg.h

Products: All SIP devices

Risk: No risk.

447 - OEM specific 'scfg' command output

Ticket #39835. problem: the OEM provides an own module to save and restore config in a special format. the 'scfg' command output shall be in same format.

solution: if the OEM module is present 'scfg' replaces the default command sequence by a single command to the OEM module.

files: update.cpp

products: all

risks: None

483 - Out of Memory trap when box is flooded with malformed/bad checksum packets

Ticket #40767. problem: when a box is flooded with malformed/bad checksum packets and the packets arrive faster than the resulting log events can be processed by the logging module, the box may run out of memory.

solution: ipproc.cpp gathers errors for one second, in case of more than 50 errors per second errors are dropped. gathered errors are passed to fault_handler.cpp any second. To prevent overuse of vars when saving errors saving is delayed for one second. only the last 50 errors arriving in this second are saved then.

files: ipproc.cpp, ipproc.h, fault_handler.cpp, fault_handler.h

products: all

risks: Minimal.

481 - Out-Of-Memory trap during voice message recording

Ticket #40729. Problem: VM script tries to record a voice message into a non-existing directory. File writing fails but writing is re-tried endlessly. May result into out-of-memory trap.

Solution: Stop recording on error and do not try again.

Files: webmedia.cpp, pbx_vm.cpp, vm_script_if.cpp

Products affected: All PBX with VM object

Risk: No risk.

526 - Partner key without pickup functionality

Ticket #41937. problem: sometimes it is desirable to have a key to watch the status of a partner and to dial this partner but withour pickup functionality

solution: new partner key flag "Do not pick up an alerting Call"

files: phone_config.cpp, phone_config.h, phone_edit.cpp, app_fkey.cpp, fkey_edit_partner.xsl

products: all phones

risks: None

460 - PBX CDR should not be generated for call independent signaling calls

Ticket #40135. problem: CDR records were generated for control calls (like group indications)

solution: Generate CDR for calls with media only

files: pbx.cpp

products: All with PBX

risks: None

444 - PBX CF Loop was detected with CFB, which was not even executed

Ticket #39764. problem: If a CFU was set to an endpoint which had an CFB back to this endpoint, this was treated like an CFU loop, which resulted in the call being rejected with user busy

solution: Loop detection fixed

files: pbx.cpp

products: all with pbx

risks: Small risk of collateral damage

458 - PBX replication timeouts too short

Ticket #40124. problem: There are timeouts to slow down adding or removing the rep attribute to user objects to reduce replication traffic. These timeouts have been set to very short values for testing and forgotten

solution: Increase timeouts to normal values

files: pbx.h

products: all with PBX

risks: None

442 - PBX SOAP: Compatibility to Version 6 broken with UserInfo "num"

Ticket #39667. problem: In Version 6 a info "num" was available containing the full number including node prefixes for a user. In Version 7 this information was provided differently, but old applications need the Version 6 info.

solution: Provide the old info if old WSDL is used

files: pbx_xml.cpp

products: all with PBX

risks: Small risk of collateral damage

464 - PBX: Callforward from waiting to waiting with CFNR at the end of announcement did not work sometimes

Ticket #40195. problem: For calls received from a Trunk object the call forward with CFNR from one Waiting to another caused the call being disconnected after 2s. This was collateral damage of fix #39161.

solution: Bug fixed

files: pbx_trunk.cpp

products: all with PBX

risks: Small risk of collateral damage

510 - PBX: CDR missing some importent Information if call is forwarded by Waiting

Ticket #41432. problem: The PBX CDRs did not show the destination to which calls are forwarded by Waiting with DTMF dialing

solution: Add more information to CDR

files: pbx.cpp, pbx_wait.cpp, pbx_api.h

products: All with PBX

risks: Minimal

520 - PBX: Trap when changing filters with 'next'

Ticket #41875. problem: When chaining filters with 'next' a trap could happen when these filters were changed

solution: Fix merged from v8

files: pbx.cpp

products: All with PBX

risks: Minimal, fix very well tested in v8 already

514 - Portuguese translation not complete

Ticket #41660. problem: portugeuese translation not complete

solution: fixed phonetext

files: phone/txt/phonetxt.base phone/txt/phonetxt.cpp

products: phones

risks: none

502 - Potential Trap in RTP if error logging happens during call clearing

Ticket #41287. problem: If an RTP error log is generated when the RTP entity is already closing a NULL pointer access trap can happen

solution: Check for RTP closing before creating the event

files: media.cpp

products: all

risks: None

469 - Problem when CFNR should result in same phone ringing again together with busy on 1 call

Ticket #40268. problem: If a user had set busy on 1 call a call forward which should have resulted in ringing the same phone again (e.g. to a broadcast group including this user) the phone stopped ringing

solution: Counting of active calls fixed

files: pbx.cpp

products: all with PBX

risk: Small risk of collateral damage

503 - PROGRESS with in-band-info not sent on ISDN

Ticket #41288. problem: A PROGRESS message with in-band-info was suppressed even in case no progress indicator was sent before (in SETUP-ACK, CALL-PROC). This caused in-band tones not be available in such situation

solution: Better check when to suppress PROGRESS

files: q931.cpp, q931.h

products: All with ISDN interfaces

risk: Some risk of collateral damage

501 - re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive"

Ticket #41226. Problem: re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive".

Solution: Honor media mode change.

Files: sip.cpp

Products: All SIP devices

Risk: No risk.

462 - Re-transmission of INVITE after CANCEL has been send

Ticket #40151. Problem: If 407 for INVITE arrives after CANCEL has been sent, the INVITE was re-transmitted with autorization header.

Solution: Ignore 407 response after CANCEL has been sent.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

467 - RTP timestamp jumps during hold/retrieve/transfer

Ticket #40213. Problem: RTP timestamp jumps during hold/retrieve/transfer. On media-relay scenarios this may confuse the remote side and result into one-way-audio.

Solution: Keep RTP timestamp progressively on media-relay scenarios.

Files: medialib.h media.cpp media_fwd.h/cpp

Products affected: All gateway devices

Risk: No risk.

519 - sectored firmware upload fails when the first firmware chunk sent to flashmanager is shorter 1000 byte

Ticket #41836. problem: at the beginning of an upload the flasmanager gathers the firmware chunks until at least 1000 byte are available. Then the header is checked and if valid write_firmware() is called to write the packet to flash. A 'start' flag indicates if it is the first call and thus flash segments have to be reserved. This flag is copied from the current chunk(event) but is TRUE in the first event only.

solution: remember start condition separately and clear after first call to write_firmware()

files: flashman.cpp, flashman.h

products: all

risks: None

476 - SOAP monitored call to busy on ... busy endpoint was terminated with rel_com instead of disc

Ticket #40490. problem: A call to a busy on ... calls busy endpoint was disconnected with RELEASE-COMPLETE even if monitored by SOAP. This results in SOAP (TAPI) not being able to disconnect the call to turn off the busy signal

solution: Use DISC to clear such a call

files: pbx.cpp

products: all with PBX

risk: None

446 - sporadic HTTP_REQUEST Assertion

Ticket #39783. problem: HTTP_REQUEST Assertion: no servlet occurs if lots of logging is done to a box

solution: delete servlet after last send to avoid race condition with next http request
files: http.cpp

products: all

risks: Low risk of collateral damage

506 - src-url not transmitted accross PBXs

Ticket #41344. problem: The URL Parameter configured at a user is sent with calls of this user. It is put into CDRs by the gateway and can be used for billing purposes. If the call was received from another PBX, the src-url was not forwarded.

solution: Forward src-url

files: pbx.cpp

products: All with PBX

risks: None

441 - The message indicating an active Automatic Redial disappears after first redial attempt

Ticket #39645. problem: When Automatic Redial is activated the text "Redial" is displayed in the message line. This text disappears after the first redial attempt and thus the user may easy forget to stop it when leaving it's place. Further each redial attempt is listed under "Active Recalls" and thus it's not clear what should be be cancelled.

solution: fix in code

files: app_cc.cpp app_ctl.cpp app_ctl.h app_disp.cpp forms.h forms_gen.cpp forms_ip72.cpp phone_list.cpp

products: all phones

risks: None

478 - TLS could trap when sending big packets

Ticket #40609. Problem: There was a bug in the packet re-fragmentation in the TLS layer that could lead to a trap when sending big packets.

Solution: Fix fragmentation mechanism

Files: tls.cpp

Products affected: All devices

Risk: No risk.

475 - TLS socket did not send up remaining data after TCP connection shutdown

Ticket #40482. Problem: In some cases the TLS socket did not send all remaining data up after the remote endpoint closed the TCP connection. This happened if the HTTP-Client got TLS fragments bigger than 2000 byes followed directly by a FIN.

Solution: Delay socket shutdown with the HTTP client until all data has been delivered.

Files: tls.cpp

Products affected: All devices

Risk: Small risk of damage with other TLS applications

473 - transparent recording of external calls must be perfomed for inbound and outbound calls

Ticket #40308. problem: with "Configuration/Registration n/Recording/Mode" = 'transparent' and "Configuration/Registration n/Recording/External Calls Only" = 'checked' only inbound external calls were recorded. if an outbound call is an external call is indicated in the numbering plan of the 'connected number' and this info was not passed to phoneapp.

solution: update numbering plan of remote party with the 'connected number' info, check for external call at connect time

files: phonesig.cpp, app_call.cpp

products: all phones

risks: None

511 - Trap in SIP stack due to misalignment of data struct

Ticket #41483. Problem: Trap in SIP stack due to misalignment of data struct.

Solution: Fixed alignment.

Files: siptrans.cpp

Products: All SIP devices

Risk: No risk.

468 - Trap in SIP stack on incoming calls

Ticket #40247. Problem: Trap in SIP stack on incoming calls.

Solution: Fix.

Files: siptrans.h

Products affected: All SIP devices

Risk: No risk.

443 - Trap when the http connection timeout is reached immediately after the connection is dropped from remote

Ticket #39686. problem: When a http socket connection was dropped from remote and and the disconnect timer fired before the http_request object was destructed a shutdown was sent to the already closed socket.

solution: fix in code

files: http.cpp

products: all

risks: None

518 - Trap when using SIP/TLS through NAT

Ticket #41810. Problem: Trap when using SIP/TLS through NAT.

Solution: Do not call send_nat_keepalive() in case of connection oriented transport.

Files: sip.cpp

Products: All SIP devices

Risk: No risk.

512 - Use To header for routing of incoming MESSAGE requests

Ticket #41485. Problem: MESSAGE routing through Gateway did not work properly.

Solution: Use To header for routing of incoming MESSAGE requests.

Files: sip.cpp

Products: PBXs and Gateways

Risk: No risk.

513 - VM. Escaping missing for directory names and CGPNs encoded in file names

Ticket #41642. problem:
-Voicebox directories for usernames containing '/','*' weren't processable.
-Filenames emerging during <pbx-record> and carrying a CGPN (separated by a hyphen'-') that contains '*','#' weren't processable.

solution:
-Internally add more escaping for user directories.
-Internally apply escaping for the CGPN name part when processing <pbx-record>
-Internally apply unescaping for the CGPN name part when processing <store-split>

files: vm_script_if.cpp

products: All with PBX

risks: All private scripts with a '/' in the "root"-attribute of one of the "<store-..>"-elements must be adapted a'la:
modify
<store-del root="one/two/" name="test.txt"/>
into
<store-del root="" name="one/two/test.txt"/>

451 - Wrong "direction" attribute in dialog-info (group indications)

Ticket #39983. problem: Attribute "direction" has always value "initiator". Even if inbound calls are reported. In result call-pickup did not work.

solution: Fix the "direction" attribute.

files: sip.cpp/h sip_dialog_info.cpp/h

products: all PBX devices using SIP

risks: None

508 - Wrong redirecting number on retry of recall

Ticket #41357. problem: A recall after a failed transfer should show the transfer destination as redirecting number. If the recall failed because of the transferor was busy again, this was not the case with the retry of the recall.

solution: Send correct redirecting number

files: pbx.cpp pbx.h

products: All with PBX

risks: Small risk of collateral damage

V7 Hotfix 7 (09-70300.17)

537 - checkmark "Phone/Preferences/Keep Calling Party Info on Pickup Key" cannot be cleared

Ticket #42257. problem: the checkmark could be set but not cleared.

solution: fix in code

files: phone_pref.xsl

products: all phones

risks: None

536 - v7hf7: Voicemail fails to prompt stored messages

Ticket #42216. problem: Applies to v7hf6. With the innovaphone voice mail, previously stored messages can´t be listened to any more. Also, the recording based on voice mail does not work any more.

solution: Exclude '/' character from name conversion

files: vm_script_if.cpp

products: All with PBX

risks:

533 - when transparent recording for external calls was configured, internal calls to voice mail were recorded too

Ticket #42180. problem: the type of an outbound call is not known at the phone until the call is connected. usually the connect message from the PBX provides this info in the numbering plan of the connected party number. in calls to the voice mail connected party number is not provided and this was misinterpreted as external call.

solution: assume internal call if connected party number is not provided

files: phonesig.cpp

products: all phones

risks: None

V7 Hotfix 8 (09-70300.19)

571 - "phys" attribute ignored for partial replication to slave

Ticket #43623. problem: LDAP objects with attribute "phys" and content "[pbx]", where "[pbx]" equals Configuration/LDAP/Replicator/PBX-Name, weren't replicated to the slave.

solution: Internally derived LDAP filter now contains a term for the "phys" attribute.

files: ldaprep.cpp

products: all PBX products

risks: none

564 - A registered SIP IF gets CDPN from To-URI (not Request-URI)

Ticket #43324. problem: A registered SIP interface gets CDPN from To-URI. Not from Request-URI since Request-URI is always the called UA's Contact-URI used in REGISTER. (But not at provider "voip.planetel.biz")

solution: Config file option "/get-cdpn-from-request-uri".

files: sip.cpp/h

products: All with SIP

risks: No risk.

567 - cf card recognized, but partion table ignored

Ticket #43386. problem: boot sector of a cf card was recognized, but partion table ignored.

solution: firstly check partion table existance and try to validate it

files: fat32.cpp

products: all products with cf card

risks: small chance of unusual boot sectors, which could cause a false cf card recognition

557 - Failed t38 negotiation in SIP

Ticket #43056. problem: Inbound SIP call. Switch-over to t38 from internal to external. After 200/OK with t38 answer from external, the call was terminated with Reason code 88 "Incompatible destination".

solution: Fix handling of CHANNEL_INIT.

files: sip.cpp

products: All with SIP

risks: Damage of other scenarios of media negotiation.

545 - fine grained locking bits for phone-settings and user-list-actions

Ticket #42595. problem: fine grained locking bits for phone-settings and user-list-actions added. now following functions from phone menu can be disabled:
1) Menu -> Phone Setup -> Lock Phone
Menu -> Phone Setup -> Change PIN
Menu -> Phone Setup -> Direct Dial
2) Menu -> User List -> User(1-6) -> Activate
Menu -> user List -> User (1-6) Function Keys

solution: implemented PHONE_LOCK_PHONE_SETUP and PHONE_LOCK_USER_LIST bits (see wiki Reference7:Fine_grained_function_locking)

files: phone/phone_config.h phone/app/app_gui.cpp phone/user/phone_user_ui.cpp

products: all telephones

risks: none

551 - Firmware upload fails in ip1201 and ip4001 if a second brower instance gets the info screen.

Ticket #42684. Problem: Flash access conflict, Firmware upload fails in ip1201 and ip4001 if a second brower instance reads the production_data (e.g. from the info screen).

Solution: use a copy of the production_data

Files: box.cpp.

Products affected: ip4001 ip1201.

Risk: Low risk of collateral damage.

541 - Group Indications should show changed remote number

Ticket #42420. problem: New Feature needed: Partner key should not only show the connected number but should also update this number if remote number changes, because of transfer.

solution: Group Indications for the update sent

files: pbx_api.h, pbx.cpp, pbx_gi.cpp, pbx_gi.h, pbx_xml.cpp, pbx_xml.h

products: all with PBX

risks: Risk of collateral damage in the area of Group Indications and SOAP

568 - GWn Interfaces could not be selected as source for automatic generated routes

Ticket #43428. problem: For physical interfaces which are registered, routes are generated automatically. These routes can be modified, e.g. additional source interfaces can be configured. GWx interfaces were excluded from this

solution: Allow GWx interfaces as source as well

files: relay_edit_route.xsl

products: All with Gateway

risks: None

553 - H.323 media reneg. from SRTP-EFC to non-EFC does not work

Ticket #42856. problem: An EFC-SRTP endpoint calls an object with two registrations, first another SRTP-EFC endpoint and second a non-EFC endpoint. With the first endpoint SRTP is negotiated during alert. When the second endpoint answers the call non-SRTP is negotiated, but the calling endpoint still sends SRTP -> no media

solution: Turn off SRTP if renegotiation to non-SRTP happens

files: h323ch.cpp

products: all

risks: None

543 - In the Terminal Capability Set coder g711A shall preceede g711u

Ticket #42503. problem: If a device providing only g711A and g711u (in that sequence) in its TCS connects to our devices the negotiated coder may be either A-law or u-law. In Europe A-law always should be the preferred coder

solution: reorder the coder tables returned by DSP drivers on a get_caps() request.

files: ac_dsp.cpp, ac_dsp2.cpp, ac_dsp3.cpp, omap_dsp.cpp, inca_dsp.cpp

products: all

risks: Minimal

560 - Incoming INVITE is rejected with "603 Decline"

Ticket #43121. problem: SIP stack rejects incoming INVITE with "603 Decline" without telling Gateway application (no LOGs).

solution: On interface selection ignore interfaces not listening.

files: siptrans.cpp

products: All with SIP interfaces without registration

risks: No risk.

550 - IP-DECT display update after fast blind call transfer

Ticket #42672. Problem: Handset display is not updated after blind call transfer in early call state.

Solution: Event handling for early call state added.

Files: dectfty.h, dectfty.cpp, dectmaster.cpp.

Products affected: All DECT devices.

Risk: Low risk of collateral damage.

547 - IP-DECT New Radio BMC firmware version PCS05Ag

Ticket #42626. Problem: Newer Radio BMC firmware.

Solution: BMC firmware update.

Files: fp_1g8_ip_1200.bin.

Products affected: All OEM DECT devices.

Risk: Third party firmware.

539 - IP-DECT OEM trap with locations reference

Ticket #42280. Problem: Trap with usage of OEM locations.

Solution: Function changed.

Files: dectmaster_if.h, dectusers.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage. OEM devices only.

556 - IP-DECT OEM trunk facility messages

Ticket #42931. Problem: Different TCP sessions are needed for different OEM message types.

Solution: Additional trunk signaling object added. Function calls changed.

Files: dtmffty.h, dtmffty.cpp, dectmaster_if.h, dectmaster.h, dectmaster.cpp, dectfty.h, dectfty,cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage. OEM devices only.

575 - IP-DECT option check called party number in Dectmaster

Ticket #44074. problem: For some system configurations it is necessary to reject calls if the called party number doesn't match with the number of the assigned user of the used PBX registration.

solution: New option to check the called party number for OEM devices.

files: dectmaster.h, dectmaster.cpp.

products affected: All OEM DECT devices.

risk: No risk of collateral damage. OEM devices only.

563 - IP3000 Wizard removes /nt config for PRI2

Ticket #43292. problem: On the IP3000 PRI2 interface is preconfigured for NT. By excuting the wizard this configuration is lost

solution: Conserve /nt config on PRI2-L1

files: ip3000/config_wizard.txt

products: IP3000

risks: None

542 - IP72: alarms originating from IP72 carry wrong & uninitialized netbios address IP72-00-00-00

Ticket #42483. problem: alarms originating from IP72 carry wrong & uninitialized netbios address IP72-00-00-00

solution: fixed module start order (init_parameters before mac used)

files: config/platform.h

products: IP72

risks: none

569 - ISDN interop problem with Cisco Router with unrestricted digital information calls

Ticket #43445. problem: With ISDN calls from an interface in NT mode a Progress Indicator was sent indicating 'Originating Address is non-ISDN'. This caused a Cisco Router to reject UDI calls (after sending CALL-PROC and ALERT!?)

solution: Do not send this PI in case of UDI calls

files: q931.cpp

products: All with ISDN

risks: Minimal

549 - memory leak after flash upload of invalid firmware files

Ticket #42669. problem: flash upload of a firmware file < 1000 byte or a larger file with an invalid header left back the complete file in memory.

solution: fix in code

files: flashman.cpp

products: all

risks: Small risc of collateral damage

558 - PBX obtaining licenses from master, wrong counting

Ticket #43093. problem: If a PBX object was changed, which was used by a slave which obtained licenses from the master, the usage of this slave was added again to the total usage

solution: Do correct cleanup when changing the configuration of a PBX object

files: pbx.cpp, inno_lic.cpp

products: all with PBX

risks: very low risk of collateral damage

559 - PBX use cause "outgoing calls barred" for calls rejected because of a filter

Ticket #43095. problem: The cause "no route to destination" was used for calls rejected because of filters. This did not express very well what was going on.

solution: Use "outgoing calls barred" instead

files: pbx.cpp

products: all with pbx

risks: None

530 - PBX-SOAP: Number update missing for overlap dialing

Ticket #42116. problem: On overlap dialing no update was sent to the monitoring application but only later with e.g. Alert. This way the application could not get the original dialed number if a call-forwarding was executed

solution: Send update with each dialed digit (as it was in v6)

files: pbx.cpp

products: all with PBX

risks: None

532 - PBX: Direct call from secretary to exec on slave did not work if call routed thru master

Ticket #42142. problem: On a exec configured on a slave PBX a call from a scretary to the exec could be routed thru the master. This could happen for example if the physical location of the secretary was in fact somewhere else. In this case the call from secretary to master was not allowed.

solution: Check to determin if call is in fact from the secretary fixed

files: pbx_exec.cpp

products: All with PBX

risks: Almost none

535 - PBX: External calls to users with 'Reject external Calls' should be rejeceted with 'Unassigned Number'

Ticket #42195. problem: External calls to PBX objects with 'Reject external calls' were rejected with cause 'Call Rejected' which reveals that the number exists, which may be more then wanted. On the other hand with 'Unassigned Number', the invalid number destination can be used in the trunk object.

solution: Use 'Unassigned Number'

files: pbx.cpp

products: All with PBX

risks: Could be that somebody needs 'Call Rejected' for some reason

544 - Pending Recalls are included only in combined call list but not in inbound call list

Ticket #42571. problem: the source of pending recalls indicated on the idle screen could not be determined by simply pressing the R-key and checking the inbound call list.

solution: fix the list item selection mask in R-key handler and call lists menu

files: app_ctl.cpp, phone_list_ui.cpp

products: all phones

risks: None

574 - Permanent reboot after hardware reset with fixed IP address due to Watchdog Timer.

Ticket #43953. Timer registers are null after a hardware reset and the Watchdog Timer runs out. The problem is that the interrupts are enabled just before the timers
are set. Some interrupts arrive and to serve them takes longer than 2 seconds.
When DHCP is used the PBX will be started later and not during this critical period and after a software reset the timer registers are not resetted and therefore the watchdog timer is triggered.

Solution: Init the Timer Registers before the Interrupts are enabled.

files: ip6000.cpp

546 - Pickup key disappears when a "Short Name (H323ID)" longer than a display line should be displayed

Ticket #42597. problem: if "Administration/Phone/Preferences/Display Name on Pickup/Partner Key" is checked, the configured "Short Name (H323ID)" is displayed instead of the Number. a name longer than than a display line was truncated to 0 and thus the key label was not displayed.

solution: truncate names to size of display line.

files: app_disp.cpp

products: all phones

risks: None

562 - Problem configuring public compact flash access

Ticket #43274. problem: Lots of entries or long paths are truncated.

solution: More buffer space.

files: http.cpp

products: All devices with CF card.

risks: No risk.

534 - Problems with Number display in PBX config with escapes

Ticket #42189. problem: If escapes are configured numbers displayed for the picking up endpoint, the diverted-to endpoint (leg1) and for a number configured with "Send Number" contained escapes, which were not correct

solution: Handle escapes better

files: pbx.cpp

products: All with PBX

risks: Some risk that other numbers are not displayed correctly

555 - Redirection from alternate PBX (standby) should not be used to determine physical location

Ticket #42916. problem: If primary PBX is not available and Registration is redirected from alternate, this should not be used as physical location

solution: Do not use alternate reditrection as physical location

files: h323sig.cpp

products: All

risks: Low risk of collateral damage

548 - reverse name resolution via external LDAP server fails if the number attribute list is terminated by a comma

Ticket #42640. problem: if "Configuration/Registration x/Directories/External LDAP Server/Number Attributes" is configured for example as "telephoneNumber:T,mobile:C,", the trailing comma results in a search pattern whithout an attribute name (=0049...) which confuses the server.

solution: fix in code

files: phone_dir.cpp

products: all phones

risks: None
checked in to 8.00,7.00,08-70300

554 - SIP: From tag changes when re-trying REGISTER with authorization

Ticket #42876. problem: Authorization did not work on "sipXecs/4.0.0 sipXecs/registry (Linux)".

solution: Reuse From tag when resending REGISTER with authorization.

files: sip.cpp/h

products: All with SIP

risks: No risk.

572 - SOAP UserConnect to a phone with a held and an alerting call does not retrieve the held call but opens the call completion menu

Ticket #43797. problem:
- A calls B, B answers the call
- A presses the R-key and calls C, C does not answer.
- a UserConnect directed to the held call (A to B) disconnects the alerting call (A to C) but instead to retrieve the held call the call completion menu is openend.

solution: fix in code

files: app_ctl.cpp

products: all phones

risks: None

552 - SOAP UserInfo: User was sometimes displayed as busy, even if free (Collateral damage from #40268)

Ticket #42789. problem: SOAP Applications (e.g. innovaphone switchboard) displayed users as busy even after all calls cleared

solution: Send missing status update again

files: pbx.cpp

products: all with PBX

risks: Very low risk of collateral damage

566 - src-url not forwarded in pbx and gateway

Ticket #43355. problem: A src-url received as part of the source address was not forwarded by the pbx or the gateway. This caused problems with billing.

solution: forward src-url

files: pbx.cpp, relay.cpp, relay.h

products: all

risks: Minimal

531 - Suppress Name/Number update after transfer for endpoints calling with CLIR

Ticket #42117. problem: On PBX internal calls with CLIR, the number was presented to the remote party after a call transfer

solution: Suppress ct_complete for CLIR numbers

files: pbx.cpp, pbx.h

products: All with PBX

risks: Small risk of collateral damage

540 - Take 200 response w/o Contact header for REGISTER as reject

Ticket #42414. problem: Some SIP server reject a failed authorization with "200 Auth Failed" w/o Contact header. This was interpreted as successful registration.

solution: Take it as 'rejected'.

files: sip.cpp

products: All with SIP

risks: No risk.

573 - tftp access with httpclient fails on some tftp servers if the file path starts with a /

Ticket #43830. Problem: tftp access with httpclient fails on some tftp servers if the file path starts with a /

Solution: remove starting /

Files: httpclient_i.cpp.

Products affected: all.

Risk: Low risk of collateral damage, starting / has no functio with tftp

561 - Toggling between active and held call with the R-R (or R-2) key sequence does not work sometimes

Ticket #43124. problem: if a phone receives message waiting indications for call completion requests pending for this phone and a call completion is cancelled, the phone thereafter may misinterpret the role of active and held call and thus for example the R-R key sequence toggling between those calls is ignored.

solution: fix in code

files: app_reg.cpp, app_call.cpp

products: all phones

risks: None

565 - Trailing slash not honored when processing unauthorized access list

Ticket #43342. problem: A trailing slash at an entry in "Public compact flash access" was not honored. Entries with a trailing slash shall grant access to the complete sub-tree. Entries without a trailing slash shall not.

solution: Honor trailing slash when checking for unauthorized access.

files: http.cpp

products: All devices with CF card

risks: Damage of CF access.

570 - Tunneled H.245 not handled while waiting for response to AdmissionRequest

Ticket #43509. problem: If tunneled H.245 where received while the Admission was still pending, no media was negotiated, because these H.245 messages where ignored.

solition: Handle Tunneled H.245 in this state

files: h323_tbl.tbl

products: all

risks: minor risk of collateral damage

538 - v7hf7: ringing frequency 50Hz instead of 25Hz

Ticket #42273. problem: All analogue gateways unse 50Hz AC fpr ringing signaling. 50Hz is common with conservative FXS designs using relays and AC derived from mains. Nevertheless the correct frequency is 25Hz.

solution: switch over to 25Hz ringing

files: si3210_drv.cpp, si3241_drv.cpp

products: ip22, ip24, ip25, ip302, ip28

risk:

V7 Hotfix10 (09-70300.21)

578 - Disconnect of incoming SIP call fails if ACK was not received yet

Ticket #45883. problem: Disconnect of incoming SIP call fails if ACK was not received yet. No BYE was send.

solution: Send BYE even before ACK is received.

files: sip.cpp

products: SIP devices

risks: No risk

577 - IP-DECT OEM LDAP timing

Ticket #45863. problem: Deleting of a duplicate endpoint takes too long if we wait for the LDAP response.

solution: System update before the LDAP response is added.

files: dectusers.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

579 - Problem with configuration of compact flash access

Ticket #45900. problem: Non-recursive directory access (w/o trailing slash) does not work. Directory listing is possible. File access is not possible.

solution: Fix access check.

files: http.cpp

products: All devices with CF card

risks: No risk

576 - SIP endpoint remains on hold after transfer (e.g. Bria)

Ticket #45856. problem: Under special timing conditions a SIP endpoint may remain on hold after transfer. Not switched from "sendonly" back to "sendrecv". Too fast hold/retrieve by PBX.

solution: Postpone retrieve event until SIP endpoint is ready to receive another re-INVITE.

files: sip.cpp

products: PBX serving SIP devices

risks: No risk

V7 Hotfix11 (09-70300.22)

602 - a ringing call moved by up-arrow key to upper display position disappeared when the active call was disconnected

Ticket #46582. problem: a ringing call which was moved to an upper display position by pressing the up-arrow key disappeared when the active call was disconnected. On a local disconnect the ringing call was invisible but remained pending in ringing state until released from remote. On a remote disconnect the ringing call was dropped.

solution: On a local disconnect the phone rings immediately. On a remote disconnect the phone rings after going on hook.

files: app_ctl.cpp, app_call.cpp

products: all phones

risks: None

588 - Configured ENUM Suffix got lost

Ticket #46439. problem: If for a ENUM GW a Suffix was configured (by use of !config change) it was deleted the next time the interface was edited

solution: Preserve suffix

files: gk.cpp, gk.h, relay_edit_voip.xsl

products: All gateway products

risks: Minimal

596 - Counters display does not work with IE8

Ticket #46508. problem: IE8 don't like img element without src attribute.

solution: replace <img> by <div>

files: log_count.xsl

products: All devices

risks: No risk

585 - Force HTTPS with non-standard ports

Ticket #46271. Problem: The HTTP redirect URI that is used for the "force HTTPS"-Feature does not include the HTTPS port number. Therefore it doesn't work if the HTTP or HTTPS port have been changed.

Solution: Include port number in HTTP redirect if one of the ports has been changed by the user.

Files: http.cpp

Products affected: All devices

Risk: Minimal

595 - H.323 Call to Waiting Queue with CFNR to another Waiting Queue with SIP Operator result in no media

Ticket #46484. problem: The media renegotiation of the H.323 call to the announcement with the SIP reverse media call to the operator fails

solution: Fix media-reneg. in H.323

files: channel.h, h323ch.cpp

products: all

risks: Minimal risk with media neg.

590 - H.323 Wrong Unexpected Message events

Ticket #46450. problem: The H.323 sometimes generates wrong Unexpecetd Message events.

solution: Disable Unexpected message events

files: h323sig.cpp

products: all

risks: None

592 - H.323: SRTP key was not forwarded to the caller in case of PBX to PBX calls with renegotiation

Ticket #46461. problem: On SRTP PBX to PBX calls with the call connected to some other media endpoint first (e.g. dialtone), the key was not forwarded to the caller. This caused garbled audio

solution: Forward SRTP key

files: h323ch.cpp

products: all

risk: Small risk of other media problem with SRTP

587 - HTML directory listing contains bad links

Ticket #46367. problem: In an HTML directory listing a link to a file who's name contains # (hash) does not work.

solution: Character escaping on links in HTML directory listings.

files: servlet_webdav.cpp

products: All devices with CF card

risks: No risk

600 - inband info received after disconnect of a connected call was lost in handsfree/headset mode because of automatic release

Ticket #46545. problem: some ISDN providers send inband info after disconnect even when the call was connected before. This info was lost in handsfree/headset mode because of automatic release after 2 seconds.

solution: on a disconnect with inband info the call is not automatically released. The call is terminated only on user request or when a release is received.

files: app_call.cpp

products: all phones

risks: None

584 - IP-DECT OEM Network region roaming

Ticket #46268. problem: New feature roaming between network regions for OEM products.

solution: Functionality added.

files: dectusers_if.h, dectusers.h, dectusers.cpp, dectmaster.h, dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

593 - IP-DECT OEM protocol DTMF through RTP

Ticket #46478. problem: For OEM protocol option 'allow DTMF through RTP' should be always off.

solution: Configuration update function fixed.

files: dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.

603 - IP-DECT OEM protocol new events

Ticket #46601. problem: New events are needed for OEM protocol.

solution: Events added.

files: fty.h, fty.cpp.

products affected: All devices.

risk: No risk of collateral damage. New events only for the OEM protocol.

582 - IP-DECT registration down reasons

Ticket #46189. problem: It is not possible to distinguish the reason why the radio-master connection fails.

solution: Now the master submits a reason in the ras down message and it is shown on the DECT radio GUI.

files: h323ras.cpp, voip.cpp, asn1_per.cpp, dectusers_if.h, dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectradio.xsl, dectradio.xsl(OEM).

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

604 - IP-DECT Sometimes user login fails

Ticket #46624. problem: Sometimes user login fails.

solution: CDPN buffer handling fixed.

files: dectusers.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

580 - IP-DECT: Not possible to initiate Call Completion if PBX user monitored by SOAP

Ticket #45940. problem: If a PBX user is monitored with SOAP (cau=true). A call is disconnected with DISC first and the REL. This caused the IP-DECT to disconnect the call to the handset too early, so no CC could be initiated

solution: Don't clear call from Master to Radio with the REL coming in from PBX

files: dtmffty.cpp

products: IP-DECT, Gateways

risks: Minimal

594 - IP150 stays logically offhook after a call initiated via WEB interface has been released

Ticket #46483. problem: calls created/accepted via WEB interface on an IP150 are started in handset mode because the IP150 has no speakerphone. The logical offhook state was not reset when such a call was released

solution: flag calls created/accepted via WEB interface and set logical onhook after release of such call

files: app_ctl.h, app_ctl.cpp, app_call.cpp

products: IP150

risks: None

586 - IP72: not transmitting continous timestamps in RTP data

Ticket #46281. problem: not transmitting continous timestamps in RTP data. Approx. the 10th RTP packet resets the timestamp to -1.

solution: fixed in DSP code.

files: box/omap/omap_dsp.cpp box/omap/omap_dsp.h

products: IP72

risks: none known

599 - Media Recording generated small files even if no media was received

Ticket #46532. problem: On an analog interface with media recording a file was generated just by going off-hook on the phone

solution: Generate file only if media connection was established

files: media.cpp, media.h

products: all

risks: Minimal

591 - New flash memory on IP200A/IP230/IP240

Ticket #46452. problem: Spansion S29AL032D50TFN00 Flash pin 12 is the ready output and not the write protect input, so P1.16 must no be a output

solution: Fix.

files: flash.c platform_inca.c

products: IP200A/IP230/IP240
risks: Low risk

583 - PBX Broadcast Conference and CFNR

Ticket #46192. problem: The no-response timer is not stopped if a PBX user is called by the broadcast conference object.

solution: Timer handling fixed.

files: pbx.h, pbx.cpp.

products affected: All devices with PBX.

risk: Minimal risk of collateral damage.

581 - PBX: CFU Loop was detected, even if CFU was disabled by boolean

Ticket #46139. problem: The PBX detected CFU loops, even if a CFU was disabled by a boolean object.

solution: Take boolean into account when checking for loops

files: pbx.cpp

products: all with PBX

risks: Minimal

597 - phone may trap on late LDAP directory search result

Ticket #46511. problem: a search result arriving after the call object has been deleted may cause a trap (collateral damage of #45166)

solution: check for presence of call object

files: app_call.cpp

products: all phones

risks: None

598 - Ringback missing with two-stage dialing thru PBX waiting to public network

Ticket #46527. problem: If thru waiting a destination is called which provides in-band ringback, this ringback was not connected to the caller, but a local ringback was not generated as well.

solution: Generate local ringback

files: pbx_wait.cpp

products: all with PBX

risks: Minimal. Fix can only affect exactly this case.

589 - Trap in SIP stack when processing REGISTER response

Ticket #46448. problem: A trap may occur when handling REGISTER response.

solution: Fix.

files: sip.cpp

products: All SIP devices

risks: No risk

605 - Unsolicity NOTIFY(simple-message-summary) rejected with 481

Ticket #46631. problem: Request-URI of NOTIFY contains local AOR (not local Contact-URI).

solution: Check Request-URI against local AOR, not only against local Contact-URI.

files: siptrans.cpp

products: All SIP devices

risks: No risk

V7 Hotfix12 (09-70300.23)

622 - don't report a sent() callback in a HTTP GET operation as an error

Ticket #47254. problem: on a HTTP GET operation the httpclient object triggers a sent() callback when the GET request data has been sent. This is not error and thus should not be traced

solution: fix in code

files: update.cpp

products: all

risks: None

625 - Feature code local clear of MWI

Ticket #47372. problem: The feature code local clear of MWI should be transparent to the call instead of closing it.

solution: Sending disconnect message removed.

files: dtmffty.cpp.

products affected: All devices with supplementary services.

risk: Minimal risk of collateral damage.

623 - Gateway: Trap if too many maps configured at an interface

Ticket #47267. problem: A buffer overrun happened when many maps at an interaface were configured

solution: Do not use a static buffer, but a packet instead

files: gk.cpp

products: all gateways

risks: None

611 - H323 OEM event decoding

Ticket #46931. problem: For an OEM protocol some event content items are missed in the signaling information event.

solution: Event action fixed.

files: h323_tbl.tbl.

products affected: All devices.

risk: No risk of collateral damage. Only relevant for OEM protocol.

606 - If a call-completion was initiated the callback number was wrong in some cases

Ticket #46662. problem: The number sent with MWI to the called phone indicating a callback request, was not correctly adjusted taking nodes and escapes into account

solution: Adjust number

files: pbx.cpp

products: all with PBX

risks: None

646 - incorrect pointer assignment in submit_config of dtmf/icp object and false configuration possibility

Ticket #47715. problem: a) local buffer assigned to a given pointer
b) it was possible to configure just one of two needed e164 and if configured just one (which makes sense for pickup), the code was not correctly shown as enabled in configuration window.

solution: fix in code

files: pbx_dtmf.h, pbx_dtmf.cpp, pbx_edit_dtmf-ctrl.xsl, pbx_icp.cpp

products: all pbx products

risks: None

661 - IP-DECT idle display update

Ticket #47890. problem: Idle display update does not work for DECT handsets.

solution: Functionality implemented, but it must be enabled over the GUI and must not be used if foreign handsets are used.

files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

634 - IP-DECT OEM location update during handover

Ticket #47519. problem: A new setup message from a radio should not trigger a OEM location update during handover state.

solution: Condition added.

files: dectmaster.h, dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

670 - IP-DECT OEM module software update

Ticket #47933. problem: There are new software versions of the OEM software modules: BMC interface software, MSF module and Skinny protocol.

solution: OEM modules replaced.

files: DECT files, MSF files, Skinny files, config.h, fty.h, fty.cpp.

products affected: All DECT devices.

risk: Normal risk of collateral damage. Updated from improved OEM branch.

632 - IP-DECT OEM Network region roaming user attribute

Ticket #47513. problem: The user attribute for the new feature 'roaming between network regions' is deleted if the user data is changed over the GUI.

solution: User attribute added in the OEM GUI and forwarded to the LDAP query.

files: dectusers.h, dectusers.cpp, dect_edit_user.xsl (OEM).

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

626 - IP-DECT OEM protocol DTMF as keypad

Ticket #47395. problem: For OEM protocol option 'DTMF as keypad' should be always on.

solution: Configuration update function fixed.

files: dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.

607 - IP-DECT OEM Standby master capabilities

Ticket #46678. problem: It should not be possible for OEM devices to delete anonymous endpoints or to edit users if the standby master is active and used.

solution: Control functions and OEM GUI changed. Display message types added.

files: dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectdisplay_if.h, dectdisplay.h (OEM), dectdisplay.cpp (OEM), dect_users_left.xsl (OEM), dect_users_right.xsl (OEM).

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

616 - IP-DECT registration down reason text

Ticket #47121. problem: New description for the registration down reason is needed.

solution: Reason text changed.

files: dectusers.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only description.

618 - IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes

Ticket #47161. problem: IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes

solution: Fix.

files: startup_ixp245.s, boot2000.y

products: IP2000
risks: The first 16 IP2000 ( Mac-Address < 00-90-33-24-00-10 ) with 64Mbyte die with this bootcode

649 - IP22 Interop with devices that do not support T38 redundancy and retransmits

Ticket #47772. problem: Some fax gateways (e.g. old avaya equipment) do not accept T.38 packet with redundancy or do no accept resent packets with the same sequence number

solution: DSP config added, use http://addr/AC-DSP0/info.xml?xsl=dsp.xsl to edit the settings.

files: ac_dsp3.cpp ac_dsp3.h ac_dsp3.mak dsp.xsl
products: IP2x IP30x
risks: Low

628 - IP24, IP28, IP302, IP305 dsp did not support renegotiation from PCM to VOIP

Ticket #47494. problem: If a call was established first with a direct PCM connection and then switched over to a normal VOIP call, there was no media. This could happen with calls from ISDN to a endpoint with a lokal analog interface (first reg) and a IP Phone (second reg) registered. The media with the local analog interface was established first, when the call was answered on the IP phone, the renegotiation happend.

solution: fix dsp driver

files: ac_dsp3.cpp, ac_dsp3.h

products: IP24, IP28, IP302, IP305

risks: other media problems with DSP

629 - IP6000/2000 trap handler must be run on common stack to prevent false alarms in post mortem memory diagnostics

Ticket #47501. problem: the trap handler was run on a fixed stack below the stack area used in normal operations and in interrupt handling. this way some allocated memory could be overriden and a false alarm could be raised by the memory sanity checks at the end of trap handling

solution: fix in code

files: startup.S, ip6000.cpp

products: ip6000,ip2000

risks: None

619 - ISDN interop flag "No-Disc" used to change handling of incoming DISC as well

Ticket #47210. problem: The No-Disc interop flag only resulted in no DISC being sent, but RELEASE instead. Symmetric behaviour would be desired.

solution: With No-Disc set a RELEASE message is sent immediatly when a DISC is received

files: q931.cpp

products: All with ISDN

risks: None

652 - malloc must always run disabled

Ticket #47792. problem: usually malloc is called only from disabled state. in some extremely rare cases (for example before a DRAM upload) it is called from enabled state and then an interrupt may cause assignment of the same memory chunk to different callers.

solution: fix in code

files: os.cpp

products: all products

risks: None

657 - MWI configuration options

Ticket #47884. problem: It should be possible to configure different numbers for the notify and interrogate number.

solution: New configuration option implemented.

files: dtmffty.h, dtmffty.cpp, dectfty.h, dectfty.cpp, dectfty.xsl(OEM).

products affected: All devices with DECT or PBX.

risk: Minimal risk of collateral damage.

658 - PBX Broadcast Conference Option

Ticket #47885. problem: It should be possible to configure if the last remaining user in a conference call should be disconnected or not.

solution: New configuration option implemented.

files: pbx_bc_conf.h, pbx_bc_conf.cpp, pbx_edit_bc_conf.xsl.

products affected: All devices with PBX.

risk: Minimal risk of collateral damage.

620 - PBX trap when adding many groups to a object

Ticket #47243. problem: A buffer overrun happened if too many groups were added to a object

solution: Check for buffer overrun added. Buffer doubled to avoid limitation

files: pbx.cpp, pbx.h

products: all with PBX

risks: None

651 - permit to control the display format of names from local/PBX directory the same way as for external directories

Ticket #47784. problem: some users want to control the name display format for inbound and outbound calls separately and to reorder/omit parts of a name. this already works for external directories but names from local or PBX directory were not displayed if the first name attribute was not configured for display because such names have only one, the 'cn' attribute.

solution: by default the full 'cn' is displayed for entries from local or PBX directory. if the format string starts with an asterisk ('*') 'cn' is tokenized and the tokens are ordered according to the requested format.
config add PHONE APP /name-display-in <format-in> /name-display-out <format-out>"
'format-...' selects the name attributes to be displayed and their order.
The default format is "123", i.e. all names are displayed as configured.
"3" displays only the third attribute of a name from an external directory but the complete 'cn' from local or PBX directory.
"*3" displays only the third attribute of a name from an external directory and only the third token (if any) of a 'cn' from local or PBX directory.

files: app_call.cpp

products: all phones

risks: None

617 - permit to search external directory for local numbers

Ticket #47151. problem: special application environments require to hide the PBX provided name-id via "config add PHONE SIG /no-name-id". If in this case the external directory is used to provide name info for local numbers it is searched only if the 'Dialing Location/External Line' prefix is empty.

solution: "config add PHONE DIR /dont-skip-ext" forces the external directory to be searched local numbers (not starting with the 'External Line' prefix) too.

files: phone_dir.cpp

products: all phones

risks: None

601 - phone must propagate error logs from call object to logging service

Ticket #46570. problem: error logs from call object sent to the phone registration object are not propagated to the logging service.

solution: fix in code

files: phonesig.cpp

products: all phones

risks: None

653 - prevent creation of pbx dtmf object with char '#' in long name

Ticket #47803. problem: it was possible to create a dtmf object with long name dtmf#join_group. If one then creates another dtmf object with long name dtmf and feature code join group enabled, it traps, because the object tries to create another user with dtmf#join_group as long name without check.

solution: disallow char '#' in long name of dtmf object

files: pbx_dtmf.cpp

products: all pbx devices

risks: None

655 - provide uptime and local time of trap in debug log

Ticket #47854. problem: sometimes it's helpful to know at which time of day and how long after boot a trap occured

solution: fix in code

files: box.cpp, arm.cpp

products: all

risks: None

631 - Quickdial, Incorrect Display for Umlaute

Ticket #47512. Problem: Quickdial, Incorrect Display for Umlaute.

Solution: UTF-8 decode display info

Files: pbx_qdial.cpp

Products affected: PBX products

Risk: No risk.

608 - Recall to user not in root node did not work

Ticket #46690. problem: A recall after transfer to a user not in root node did not work, if call from another Node. If call from same node, number display was wrong

solution: Take node into account when root recall

files: pbx.cpp

products: all with PBX

risk: Risk of collateral damage limited to recall

614 - SIP interop: SAGEM fax server fails to receive t38 fax

Ticket #47085. Problem: SAGEM fax server gets initial SDP offer with audio (non-zero port) and t38 (zero port) and accepts with audio (zero port) and t38 (non-zero port).

Solution: Config option to select t38 capability indication. Use "/t38-cap 1" or "/t38-cap 2" for SAGEM.

Files: sip.cpp/h sdpmsg.cpp/h

Products affected: SIP gateways

Risk: No risk.

612 - SIP: "300 Multiple Choices" was not handled

Ticket #46938. Problem: SIP response "300 Multiple Choices" for INVITE was not handled.

Solution: Re-send INVITE with replace Request-URI.

Files: sip.cpp

Products affected: All SIP devices.

Risk: No risk.

613 - SIP: Assignment of incoming calls to signaling interface fails

Ticket #46939. Problem: INVITE is rejected with "403 Forbidden" if Request-URI does not match local Contact-URI.

Solution: Do not require URI match, if only one signaling interface on local recv port.

Files: siptrans.cpp

Products affected: Devices with registered SIP interfaces (phones/gateways).

Risk: No risk.

667 - SIP: Handling of transfer to different ip address

Ticket #47917. Problem: MS Exchange transfers fax calls to external fax servers with REFER.

Solution: Follow this transfer and send new INVITE to destination address.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk

638 - SIP: Missing request re-transmission after 100/Trying

Ticket #47573. Problem: A non-INVITE request (e.g. REGISTER) was not re-transmitted after 100/Trying has been received. A lost final response caused a transaction timeout.

Solution: Do not stop Timer E when entering transaction state "Proceeding".

Files: siptrans.cpp

Products affected: All SIP devices

Risk: No risk.

621 - SIP: No ACK is sent

Ticket #47252. Problem: If a call receives lots of provisional responses (20 or more), SIP may fail to send ACK and "ERROR: SIP message buffer (2049) exceeded!" appears in trace.

Solution: Check if a new provisional response really updates anything (e.g. tag).

Files: siptrans.cpp

Products affected: SIP gateways

Risk: No risk.

673 - SIP: Problem with media negotiation after 488

Ticket #47957. Problem: After re-INVITE client transaction was rejected (e.g. 488) the next re-INVITE was not send. May result in one-way-audio.

Solution: Cleanup when handling reject for re-INVITE.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk

624 - sporadic HTTP_REQUEST Assertion

Ticket #47348. problem: HTTP_REQUEST assertion due to large alloc size after send_responses during idle state

solution: cleanup http session after responses, debugs added
files: http.h, http.cpp

products: all

risks: Low risk of collateral damage

627 - Trap on dialing directory search object with http and full number including # to connect

Ticket #47403. problem: class directory_search_call_http deleted twice

solution: prevent double deletion

files: pbx_dirsearch.cpp

products affected: all PBX devices

risk: No risk of collateral damage, as the fix is just valid for directory search calls with a http server

630 - Trap on SIP call clearing

Ticket #47511. Problem: Trap on SIP call clearing.

Solution: Fix double delete of call object.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk.

615 - Trap when adding a group to a pbx dtmf child object

Ticket #47104. problem: the box traps, when a group is added to a pbx dtmf child object, which shouldn't be configurable.

solution: remove configuration possibility of child objects.

files: pbx_obj_rights.xsl

products affected: All pbx devices.

risk: none

609 - update 'scfg' command may hang if target url is invalid (non existent host or host rejects connect)

Ticket #46716. problem: update 'scfg' command hangs if the target url is invalid and the HTTP-PUT operation is terminated when no other operation is pending. In this case the termination of 'scfg' was not reported from UP0 to the script process UP1

solution: fix in code

files: update.cpp

products: all

risks: None

610 - When the phone speaker volume is changed the micro must stay disabled if it was disabled before

Ticket #46788. problem: When the phone speaker volume was changed while the micro was disabled the micro was enabled but displayed as disabled. Naturally the micro must stay disabled here.

solution: fix in code

files: phonesig.cpp

products: all phones

risks: None

633 - Wrong DTMF when dialing DTMF feature codes from analog devices

Ticket #47516. problem: on channel connect, a DTMF can be send twice

solution: do not connect for feature codes, when not needed

files: pbx_dtmf.h, pbx_dtmf.cpp

products affected: all PBX devices

risk: No risk of collateral damage, as the fix is just valid for dtmf feature codes

V7 Hotfix13 (10-70300.24)

726 - allow empty search base in directory search object

Ticket #48702. problem: ldap server needs an empty search base, but the directory search object doesn't allow an empty one

solution: disable check for empty search base

files: pbx_dirsearch.cpp

products: all pbx devices

risks: None

711 - Call-Completion display at called phone not deleted if calling/called in same but not root node

Ticket #48579. problem: The Call-Completion waiting display at called endpoint was not deleted after execution of call completion if calling and called endpoint in same but not root node. The mwiDeactivate used to deleted the display contained the wrong number. In a previous fix the mwiActivate which was also wrong was fixed, so before this fix it worked, because both contained the same wrong number

solution: Fix number in mwiDeactivate

files: pbx.cpp

products: all with PBX

risks: None

718 - Gateway Routing Table: Routing a call to a Gatekeeper registration using Name Out did not work anymore

Ticket #48609. problem: When Name Out in a route was used to address a Gatekeeper registration this Name Out was sent with the call. This prohibited further routing of the call on the receiving side with overlap sending.

solution: Do not send Name Out with call if the name is used to identify Gatekeeper reg.

files: relay.cpp

products: all Gateway products

risks: Small risk that this name needs to be transmited for some special configurations

745 - Gateway: Trap if reconfiguring an analog interface registration with Feature Code support

Ticket #48839. problem: If the reegistration configuration of an analog interface (e.g. changing registration name/no) was changed a trap happened when the registration was up again. Happened only with enabled Feature Codes.

solution: Better handling of reconfiguration

files: dtmffty.cpp, gk.cpp, relayfty.cpp, relayfty.h, relayfty_if.h

products: all with analog interfaces

risks: Minimal

746 - IP-DECT facility entity memory leak

Ticket #48851. problem: Facility entity objects aren't deleted in rare situations.

solution: Facility entity delete function call fixed.

files: dectmaster.cpp, dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

759 - IP2000/IP6000 must permit more than 8000 users

Ticket #49079. problem: for the IP2000/IP6000 the number of objects in stored flash directory is restricted to 8000 but some customers need more.

solution: increase default to 10000, permit for more (or less) via "config add FLASHDIR0 /max <number-of-objects>"

files: flashdir.cpp, config.h

products: IP2000/IP6000

risks: None

737 - IP240-1000 - network connectivity lost after restart of the physical layer controller because of spurious errors

Ticket #48786. problem: the physical layer controller (PHY) of an IP240-100 is checked for spurious errors any second. If such errors are detected the controller is restarted. After restart data transfer from the phone CPU to the network was blocked. Data reception from network and transfer between LAN and PC port did work.

solution: fix in code

files: inca_drv.cpp

products: IP 240-1000

risks: None

741 - Leaks with DECT signalling using TLS

Ticket #48821. Problem: Sometimes the TLS sockets that are used by DECT signalling are not deleted because of a shutdown event collision in the TLS socket

Solution: Fix TLS shutdown flow

Files: tls.cpp, tls.h

Risk: Collateral damage with other applications using TLS

755 - Master PBX to obtain licenses from another Master

Ticket #48939. problem: There are configurations in which centralized licensing is desired but otherwise independent Master PBXs are needed.

solution: Configuration option added to allow a slave to register at a master to obtain licenses, but act as master in all other respects

files: pbx.cpp, pbx.h, pbx_general.xsl

products: all with PBX

risks: Minimal

730 - Memory Leak

Ticket #48715. Problem: Lost memory every time a registered SIP interface is deactivated.

Solution: Free allocated memory for authentication data.

Files: sip.cpp

Products affected: SIP endpoints

Risk: No risk.

723 - Missing normalization of received diverting leg info

Ticket #48625. problem: A diverting leg info received on a trunk or gateway object must be normalized to the PBX internal representation (number from root with all prefixes but without escapes) to be displayed correctly when sent to an endpoint. This normalization was missing.

solution: Normalization added.

files: pbx.cpp, pbx.h, pbx_api.h

products: all with PBX

risks: None

709 - One-way-voice after retrieve together with SRTP, H323 and Registration with password

Ticket #48572. problem: One-way-voice could happen after retrieve, if SRTP is used on H.323 call, which uses a refistration with password. This could also happen when switching to a 3-pty conference (retrieve done on one leg). This is caused by an unencrypted SRTP key sent with the media renegotiation.

solution: Do encryption of the SRTP key.

files: h323sig.cpp

products: all

risks: Collateral damage with media negotiation

732 - PBX: As diverting number the real number was sent even if Send Number configured

Ticket #48719. problem: The 'Send Number' should be sent as diverting number if configured

solution: Send 'Send Number' as diverting number if configured

files: pbx.cpp

products: all with PBX

risks: None

761 - PBX: Reference to Config Template lost, when opening User from Registrations page

Ticket #49090. problem: If a user object was opened from the Registrations page a configured config template was not displayed. By pressing Save or Apply the user object was written without the config template

solution: Display config template when opening user object from registrations page

files: pbx_regs.xsl

products: all with PBX

risks: None

735 - PBX: Reject external calls did not work as desired together with call forward

Ticket #48728. problem: An endpoint with 'Reject Ext. Calls' set should not be able to forward external calls. An external call forwarded to an endpoint with 'Reject Ext. Calls' set should succeed.

solution: fixed

files: pbx.cpp

products: all with PBX

risks: Could be that the old behaviour was desired in some installations

713 - PBX: Trap if corrupt CF in flash

Ticket #48584. problem: If somehow an invalid call-forward config ends up in flashdir, the PBX enters a boot-loop

solution: Handle invalid call-forward configs

files: pbx.cpp

products: all with PBX

risks: none

724 - PBX: Trap when receiving Facility during disconnect

Ticket #48626. problem: A trap could happen in case of a collision of Facility and Call Clearing, with very special timing, because of an attempt to send a facility on an already deleted call.

solution: Better check for deleted call.

files: pbx.cpp

products: all with PBX

risks: None

743 - Potential trap when reconfiguring Gateway interfaces

Ticket #48834. problem: If a gateway interface is reconfigured while calls are active a trap could happen later on.

solution: Better handling of reconfiguration

files: signal.cpp, signal.h

products: all

risks: none

681 - SIP: Media negotiation problem at Alcatel Omni PCX

Ticket #48339. Problem: Several provisional responses with changing remote RTP addresses may cause RTP to be sent to wrong destination.

Solution: Fix handling of updated SDP answers.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk.

690 - SIP: No switch from local ringback tone to inband ringback tone

Ticket #48427. Problem: No switch from local ringback tone to inband ringback tone, because 183/Progress response was not handled after 180/Ringing.

Solution: Handle 183 after 180.

Files: sipstate.cpp

Products affected: SIP devices

Risk: No risk.

693 - SIP: Problems with DTMF when interworking v5 devices to SIP

Ticket #48440. Problem: A call initiated by a v5 device that is interworked to SIP may have problems with DTMF.

Solution: Send SDP offer in INVITE as one single media description.

Files: sip.cpp

Products affected: SIP gateway and PBXs

Risk: No risk.

700 - VM: Trap, Double-Free after sending Email with Body

Ticket #48498. problem: VM, trap, double free after sending email with body

solution: don't send such emails or apply fix

files: smtp_mta.cpp

products: all pbx devices

risks: None

V7 Hotfix14 (10-70300.25)

830 - AD Replicator, Searches to Global Catalog Server weren't possible

Ticket #50130. Description problem: Searches to Global Catalog Server weren't possible

solution: Fix configuration for LDAP port

files: ldaprep.cpp

products: all PBX-,Dect products

risks: None

832 - fat32 check disc trap

Ticket #50202. Problem: After a firmware trap with a cf card, the afterwards check disk can cause a trap loop, if directory entries are corrupt because of the first trap.

Solution: Increment counter which caused the trap loop.

Files: fat32.cpp

Products affected: All gateways with CF slot

Risk: minor risk

826 - Gateway sends calls to wrong registered SIP endpoint

Ticket #50103. Problem: If the addressed endpoint is currently not registered at the registrar interface at the gateway, calls are delivered to another registered SIP endpoint.

Solution: Reject calls if addressed endpoint is not registered.

Files: siptrans.cpp

Products affected: All gateways

Risk: No risk.

770 - Gateway: CGPN Map at route was executed even if the call using this route failed

Ticket #49176. problem: A CGPN Map at a route was executed even if the call using this route failed. This was confusing if rerouting was configured in case a destination was not available.

solution: CGPN map not executed if call failed, so rerouting could be done with the same CGPN

files: gk.cpp

products: all gateway products

risks: Could be that there are configs depending on old, wrong behaviour

822 - GUI: Registration indicator not aligned

Ticket #50074. Problem: The registration indicator (arrow) was not aligned on Gateway/GK page.

Solution: Make it aligned.

Files: relay_ifs.xsl

Products affected: All gateways

Risk: No risk.

774 - H.323: EFC coding wrong

Ticket #49199. problem: Coding of EFC was wrong in early versions. This was fixed, but can be configured to the old (wrong) coding with config change H323 /fix 0, with config change H323 /fix 1 the fix can be turned on. Without the /fix option the default should be fixed, was was not.

solution: /fix default set to 1

files: h323sig.cpp

products: all

risks: Compatibility with mixed versions

796 - headset mode must be kept when a knocking call is accepted via operator while a disconnected call is pending

Ticket #49797. problem: a knocking call accepted via operator was routed to speaker instead to headset when the phone was in headset mode playing the busy tone for a call which was disconnected from remote.

solution: fix in code

files: app_ctl.cpp

products: all phones

riscs: none

846 - IP-DECT hanging calls

Ticket #50387. problem: Sometime there are hanging calls in the radio.

solution: New timer added to check for hanging calls.

files: dectradio.h, dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

804 - IP302/IP305: PCM connected channels disconnect other channels media

Ticket #49880. problem: disconnect is sent to wrong channel

solution: fixed in code

files: ac_dsp3.cpp

products: ip302 ip305

risks: low risk

797 - IP800 conference

Ticket #49799. problem: Conference hardware initialization for channel ten does not work.

solution: Delay within initialization sequence inserted.

files: ipac_drv.cpp.

products affected: Devices with IPAC chip.

risk: No risk of collateral damage.

816 - Media Negotiation between SIP and H.323 failed if Offer from both sides available

Ticket #50050. problem: If a H.323 and a SIP call leg were to be connected and a media offer was available on both legs, nothing happend. The new offer should have been sent on the H.323 leg. This situation could happen in special cases with transfer and reverse media.

solution: Send offer on H.323 in this case

files: h323ch.cpp

products: all

risk: Small riks of collateral damage

766 - Media Renegotiation from H.323 Slowstart to H.323 EFC failed accross multiple PBXs

Ticket #49148. problem: The message with the new FeatureSet, which indicated a switchover from non-EFC to EFC was not forwarded by the PBX. This happens if a slow-start endpoint located at a slave transfers a call originating from another slave so that both new endpoints are EFC. The master in this case did not forward the switchover FeatureSet.

solution: forward FeatureSet

files: h323ch.cpp

products: all

risks: None

764 - Need to configure 'Route Root-Node External Calls to' in case of 'License Only' on Slave

Ticket #49138. problem: A Slave or Standby-Slave PBX configured as 'License Only' did not allow to configure a Root Node Extern destination

solution: Allow configureation of Root-Node Extern

files: pbx_general.xsl

products: all with PBX

risks: None

811 - One-way-voice after unpark/pickup together with SRTP, H323 and Registration with password

Ticket #49965. problem: Within media renegotiation after unpark/pickup a wrong SRTP key was sent. This resulted in one-way media.

solution: Transmit correct SRTP key

files: h323sig.cpp

products: all

risk: Other media problems

785 - PBX: After CFNR from Waiting with end of first announcement no MOH during call proceeding/alerting

Ticket #49459. problem: If a CFNR is executed at the end of the first announcement of a Waiting object (no second announcement), MOH should be played during call proceeding/alerting of the forwarded call. This did not happen, because MOH was turned off by accident with clearing of the announcement call.

solution: Don't turn off MOH

files: pbx.cpp

products: all with PBX

risks: litte risk of other media problems within PBX

817 - PBX: Special fix for group-indications to exec now for exec only

Ticket #50054. problem: A special fix was done for the problem that a exec needs to see if a call ringing at the secretary, is a call which is actually directed to the exec or if the secretary was called directly. Group Indication for calls diverted by the user sent to the user are sent as if the call was ringing at the user. This causes problems, because the Group Indications do not wor as expected.

solution: Do this fix for exec only. In 8.00 this is fixed in a better way (diverting info added to group indication)

files: pbx_gi.cpp

products: all with PBX

risks: None

782 - SIP: 180/Ringing was not re-transmitted

Ticket #49413. Problem: If 180/Ringing got lost and the caller re-transmitted INVITE, re-transmission of 180/Ringing was missing.

Solution: Re-transmit last sent provisional response.

Files: siptrans.cpp

Products affected: SIP devices

Risk: No risk.

834 - SIP: Expires parameter not always decoded from REGISTER response

Ticket #50211. Problem: If the registrar added a display name to the client's Contact-URI the assigned expires value was not decoded.

Solution: Ignore display name in Contact-URI of REGISTER response.

Files: sip.cpp

Products affected: All SIP endpoints

Risk: No risk.

778 - SIP: Not accepting calls from alternative proxy

Ticket #49281. Problem: When being registered at a proxy with 2 ip addresses the gateway does not accept calls from the alternative ip address.

Solution: Accept calls from both ip addresses learned by DNS.

Files: siptrans.cpp

Products affected: SIP devices

Risk: No risk.

841 - Wrong calling party info on CTI initiated calls from a phone to a Trunk Object with 'Set Calling=Diverting No' checked

Ticket #50304. problem: When a CTI application (TAPI or other SOAP based application) initiates a call from a phone to a Trunk Object with 'Set Calling=Diverting No' checked the the called party receives a wrong calling party info.

solution: when a CT-INITIATE is received on a RC-CONNECT call the cdpn in the CT-SETUP facility sent with the newly created outbound call is set to the phones own number (i.e. identical to the SETUP cgpn).

files: phonesig.cpp

products: all phones

riscs: none

V7 Hotfix15 (70300.27)

856 - in any phone recording mode the recorder gets number and/or h323id of the currently connected remote party

Ticket #50823. problem: without this infomation the identification of the remote party in an recorded call requires syncronisation with log files not directly available in the recorder.

solution: a CT-COMPLETE with number/h323id of the remote party is sent to the recorder whenever the remote party changes because of a consultation call or a call transfer.

files: appp_form.cpp, app_fkey.cpp, app_disp.cpp, app_ctl.cpp, app_ctl.h, app_call.cpp

products: all phones

risks: Minimal for recorders not able to deal with CT-COMPLETE info

852 - INCA phones - monitoring a headset conversation via handset (headset-spy) did not work

Ticket #50672. problem: the /headset-spy option was skipped because of a bug in the driver option handler

solution: fix in code

files: inca_dsp.cpp

products: all phones

risks: None

914 - IP-DECT configuration option 'Redirection with GK ID'

Ticket #51619. problem: Configuration option needed to append the GK ID if the registration is redirected by the PBX.

solution: Configuration option added.

files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: No risk of collateral damage.

910 - IP-DECT trap during call release and information message

Ticket #51584. problem: A trap occurs if the DECT handset sends a information message and the call is release by the PBX. Only the channel is released, but not yet the call.

solution: Null pointer check added.

files: dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage.

887 - IP-DECT wrong forward of internal information event

Ticket #51417. problem: A internal information event is wrongly forwarded to the PBX.

solution: Forward of this event is avoided.

files: dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

893 - no RTP-DTMF after rerouting

Ticket #51432. problem: If rerouting happened from one media endpoint to another, for example if a TONE interface is used for a dialtone after one digit dialed there is a rerouting to another interface, RTP-DTMF does not work.

solution: Media renegotiation fixed for this case

files: ac_dsp.h, ac_dsp2.h, ac_dsp3.h

risks: none

919 - One way media after SRTP renegotiation on IP6000

Ticket #51691. Problem: On the IP6000 platform the SRTP ROC was not reset on media renegotiation.

Solution: Reset SRTP ROC when rtp_channel::set_media_config is called

Files: srtp_cipher.cpp

Risk: no risk known

950 - PBX potential trap in case of collision of disconnect with intrusion and other operations changing media peer

Ticket #52070. problem: If a call is attempted to intrude right when this call is being disconnected at NULL pointer access could happen

solution: Check if call is still active when before execute intrude

files: pbx.cpp

products: all with PBX

risks: none

886 - PBX-CDR: Local Time wrong (same as UTC)

Ticket #51416. problem: In the CDRs from the PBX the local time was always set to UTC

solution: Use correct time

files: pbx.cpp

products: all with PBX

risks: None

940 - PBX: SOAP initiated calls were sent with CT-SETUP

Ticket #51965. problem: If a call was initiated by SOAP to the PBX, the outgoing call contained a CT-SETUP facility. This way the call was displayed as transfered call by the destination, but it should be displayed just the same as a call initiated on the phone itself.

solution: remove CT-SETUP from outgoing call

files: pbx_xml.cpp

products: all with PBX

risks: None

948 - PBX: Successive diversion activate/deactivate and dynamic group status sometimes failed

Ticket #52038. problem: If a diversion activate/deactivate from an endpoint arrived before the last was written to flashdir, update was performed based on information in dram not information being written into flash

solution: Update information in dram before writing to flashdir

files: pbx.cpp, pbx.h, pbx_api.h, pbx_dtmf.cpp

products: all with PBX

risks: Collateral damage with diversion/dynamic group updates

881 - Phone: Local coder config was not used on outgoing phone calls

Ticket #51352. Problem: Local coder config was not applied to outgoing phone calls, but is required when it comes to media re-negotiation.

Solution: Give local coder config to all kind of calls.

Files: phonesig.cpp/h

Products affected: All phones.

Risk: No risk.

921 - Possible trap when removing a cf card without previous unmount

Ticket #51704. Problem: events where queued to not exisiting serial

Solution: cf driver shouldn't answer outstanding events after removing the cf card, as the fat32 module won't wait for any events after receiving status removed event

Files: cf_drv.cpp

Risk: minor risk

861 - Progress Indicator 'Call not end to end ISDN' sent with each H.323 alert

Ticket #50944. problem: The PI 'call not end to end isdn' was sent with each H.323 alert. But this progress code also indicates that in-band info is available, so a local ringback is sometimes turned of because of it.

solution: Do not send 'call is not end to end isdn'

files: relay.cpp

products: all gateway products

risk: Could be that some endpoints require this PI

949 - SIP: Missing dialog-info for calls without or zero-length CGPN

Ticket #52060. Problem: No dialog-info was sent for calls without or zero-length CGPN.

Solution: Use calling party's name if no CGPN is available.

Files: sip.cpp

Products affected: All PBX's serving SIP phones

Risk: No risk.

958 - SIP: SRTP key changes right after connect

Ticket #52169. Problem: During call establishment with SRTP a re-INVITE is initiated right after connect providing a new SRTP key. It's unnecessary and some equpiment fail to handle change of SRTP key.

Solution: Avoid change of SRTP during call.

Files: sip.cpp/h

Products affected: SIP Gateways

Risk: No risk.

930 - Trap if some but not all interfaces of a given type are unlicensed

Ticket #51772. problem: If some but not all interfaces are unlicensed (e.g. IP6000 with 4 PRI interfaces is licensed for 2 PRI interfaces) a trap could happen any time after the Gateway config was updated.

solution: Access to license structure fixed

files: inno_lic.cpp, gk.cpp

products: all gateway products

risks: None

920 - Trap in SRTP socket

Ticket #51693. Problem: Under special conditions SRTP sockets send events to serials that are already deleted.

Solution: Check if the destination does still exist before sending the event.

Files: srtp_cipher.cpp

897 - v7: Trace output added to track down cause of "alloc-size" traps

Ticket #51446. Problem: Traps happen within the flash directory due to a memory allocation request greater than the maximum grantable size.

Solution: More information is needed. Added error-trace output.

Files: flashdir.cpp

Risk: none

880 - v7:Qsig: leg1Info sent with ALERT msg, instead of in FACILITY msg

Ticket #51346. Problem: Siemens ACWin got confused after upgrade v6->v7. Qsig mandates to send the leg1Information within a FACILITY message (while H.323 does also allow for an ALERT to carry the leg1).

Solution: Detect and treat this case accordingly within the relay/gateway.

Files: relay.cpp

Risk: none

878 - wrong calculations causing check disc to damage data

Ticket #51304. Problem: check disc could produce damaged data in certain situations

Solution: correctly calculate partial records and clusters for next run. Also check if clusters are used multiple times.

Files: fat32.cpp, fat32.h, fat32.xsl

Risk: minor risk

V7 Hotfix16 (70300.28)

1000 - Call Intrusion across PBXs did not work

Ticket #52578. problem: If a call was to be intruded with the destination of the intrusion (which is one of the endpoints of the call to be intruded call) on a different PBX the intrusion failed in a strange way, because the intrusion facilities were not correctly forwarded between the PBXs

solution: Fix forwarding of intrusion facilities

files: pbx.cpp

products: all with PBX

risks: Small risk of collateral damage with intrusion

1038 - Change packet creator information for debugging

Ticket #53192. Packet's creator is changed to destination module by the OS if trace is enabled for source or destination module. For debugging.

1012 - directory entries displayed duplicate when using delayed input with slow LDAP-servers

Ticket #52877. problem: with delayed keyboard input the number of queries sent to the LDAP server when typing a name is reduced. The first query is sent after the number of characters configured by 'delay-count' or the timeout configured by 'delay-ticks'. If another character was typed before the response arrived a new search was started but the previous search results were not cleared.

solution: fix in code

files: phone_dir_ui.cpp

products: all phones

riscs: none

1058 - formatting of an unknown first partition broke this partition

Ticket #53382. If a cf card has partitions and the first partition wasn't recognized, the formatting of this partition broke the first partition, as the wrong boot sector was used.

1057 - formatting of small cf cards didn't work

Ticket #53381. The formatting of small cf cards (<512 MB) didn't work, as the cluster size was calculated too high.
Smaller cluster sizes are used now.

1042 - H.323 coding fixed, Wireshark indicated error

Ticket #53208. The mandatory field 'maintainConnection' was missing in the Setup message. This usually does not create problems, because it is an extension, so that the message can be decoded even if the field is missing.

NULL element 'symmetricOperationRequired' was coded with length 0. According to the standard it should be a byte with all 0 bits and length 1.

983 - H.323 local-media renegotiation with SRTP results in one-way media

Ticket #52431. problem: Wrong key was used after media renegotiation

solution: Make sure the right key is used

files: h323ch.cpp

products: all

risks: None, same fix is used for a long time in v8

1039 - H.323 RAS registration more robust

Ticket #53194. On wireless or congested networks registrations were lost easily if only a few packets were lost. Esspecially if a call signal failed the registration was assumed lost right away. Now this triggers only a keep-alive cycle.

991 - H.323 Signal IE when sent once during a call, was then sent with each subsequent message

Ticket #52518. problem: A Signal IE sent with one message was repeated with all the messages. This could cause the a Signal IE indicating Ringback sent with Alert was repeated with Disc, so that no busy tone was played with Disc, but Ringback

solution: Send Signal IE once only

files: h323sig.cpp

products: all

risks: Minimal risk of collateral damage

1016 - HTTP memory leak

Ticket #52982. problem: There are memory leaks in http.

solution: Packet deleted.

files: http.cpp.

products affected: All devices.

risk: No risk of collateral damage.

985 - IP-DECT OEM protocol memory leaks

Ticket #52467. problem: There are memory leaks if Skinny protocol is used.

solution: Cleanup fixed.

files: skinny.h, skinny.cpp, skinny_signaling.cpp, skinny_translation.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

1029 - IP-DECT OEM protocol release reasons

Ticket #53118. IP-DECT Release reasons for OEM protocol are changed.

1046 - log records to a SYSLOG (UDP) server were sent delayed

Ticket #53224. log records passed to the logging module before the transport layer is up are saved in a queue. in case of SYSLOG (UDP) this queue was not flushed correctly and sending of a record was triggered only by the following record with the effect that one or more of the latest records were always pending in queue.

1013 - Option added to configure DTMF detection sensitivy

Ticket #52879. problem: sporadic false DTMF detect

solution: Option added to configure DTMF detection sensitivy. Use
config change AC-DSP0 /dtmf-threshold <val>
config write
reset
to change the sensitivity.
0 selects -38dBm ( default),
1 selects -28dBm,
2 selects -33dBm,
3 selects -43dBm,
4 selects -48dBm
During boot a non-default sensitivity is shown in the trace

files: ac_dsp2.cpp/h ac48xlo.c ac48xdef.h

products: ip800 ip6000

1063 - PBX Gateway object with Prefix checkmark set, did not remove prefix on retry

Ticket #53414. On a Gateway object multiple gateways can be registered. These gateways are used in a round robin fashion. If a gateway call fails because of resources unavailable the next gateway is tried. The prefix was not removed on this retry as it should be with the Prefix checkmark set

1030 - PBX Waiting: 'CFU disables operator' was not taken into account for 'Max Call/Operator(%)'

Ticket #53123. If the CFU disables operator option is used, an operator with a configured CFU should be treated as if it was not in the operator group. It was still counted as operator for the Max Call/Operator feature.

1045 - PBX-SOAP: UserClear could not be used to cancel UserCall

Ticket #53222. If the local phone was still ringing because of a UserCall, the UserClear could not be used to cancel this call.

993 - PBX: Diverting Info not preserved with SOAP::UserRedirect if diverted on another PBX

Ticket #52532. problem: Normaly a call, which was already forwarded (CFU, CFB, CFNR) and then redirected with UserRedirect, shows the original diverting number. This did not work if the call was forwarded on another PBX

solution: Preserve diverting info

files: pbx.cpp

products: all with PBX

risks: None

1071 - PBX: More then one registration was accepted for a Slave PBX. Caused problems with Standby switchover

Ticket #53496. The normal rules were applied for registrations as Slave PBX. This meant if authentication was used multiple registrations were accepted. This caused the address to which registrations should be redirected to be set wrong. After a switchover to a standby slave and a switchback it could happen that on the Master registrations were not correctly redirected to the slave

974 - PBX: Potential Trap if changing groups

Ticket #52313. problem: If group memberships are changed esspecially at Waiting Queues or Waiting Queue operators a trap could happen, because PBX internal information could get inconsistent.

solution: Fixed update of internal information

files: pbx.cpp

products: all with PBX

risks: Other traps, complex operations, so it is possibly still wrong

989 - PBX: Presentation restricted name was sent with group indication

Ticket #52507. problem: Even if a caller had presentation restricted set, the name was sent in group indications, so it was displayed on pickup keys

solution: Don't send presentation restricted names in group indications

files: pbx.cpp, pbx.h

products: all with PBX

risks: Minimal risk of collateral damage

1064 - PPTP connection failed because of packet reordering by certain DSL providers/equipment

Ticket #53429. dial out PPTP connections to a central innovaphone IPxxx failed when tried from certain remote locations but succeeded from other locations.
The reason for the failure was that packets sent by the central IPxxx were reordered by some network equipment and this case was not handled correctly in the connection setup phase.

1027 - Reject TLS sessions if the server uses an expired certificate

Ticket #53102. TLS connections were not closed on the client side if the server used an expired certificate. This was treated as a warning but not as a fatal error.

Files: tls.cpp

1015 - report result of call triggered by a Dial function key with "Send as Control Call " checked

Ticket #52974. problem: feedback for the keystroke was missing

solution: report result via a popup message on display

files: phonesig_if.h, phonesig.cpp, phonesig.h, app_reg.cpp, app_fkey.cpp, app_ctl.h

products: all phones

riscs: none

965 - SIP: Direction attribute in dialog-info was wrong in some cases

Ticket #52228. Problem: Direction attribute in dialog-info was wrong in some cases.

Solution: Add direction attribute to GI to fix direction attribute in dialog-info.

Files: fty.cpp/h pbx_gi.cpp/h sip.cpp sipfty.cpp

Products affected: PBXs serving SIP endpoints

Risk: Low risk of collateral damage

960 - SIP: Problem with Thomson ST2030 SIP Phone as member of broadcast group

Ticket #52199. Problem: The ST2030 calls for PRACK when sending 180 with SDP offer. PBX cannot provide SDP answer in PRACK. PBX does not send any PRACK here.

Solution: Send PRACK without SDP in this case.

Files: sip.cpp

Products affected: PBX serving SIP endpoints

Risk: No risk.

1003 - SIP: Problems parsing exotic SIP URIs

Ticket #52631. Problem: Failed to decode destination port from a redirect URI like this: <sip:2204;phone-context=cdp.udp@livio.nl:16618;maddr=10.2.10.3;transport=udp;x-nt-redirect=redirect-server>

Solution: Fix URI parsing.

Files: sipmsg.cpp

Products affected: All SIP devices

Risk: No risk

979 - SIP: Trap when performing call transfer on ARM based hardware

Ticket #52357. Problem: Trap due to alignment error.

Solution: Fix alignment of data.

Files: sip.cpp

Products affected: ARM based devices talking SIP

Risk: No risk.

962 - SIP: Trap when using TCP as transport

Ticket #52210. Problem: Trap when trying to cleanup idle/unused TCP connections.

Solution: Check connection state before initiating connection shutdown.

Files: siptrans.cpp

Products affected: SIP devices doing SIP over TCP

Risk: No risk.

976 - socket bind/connect sometimes failed because of duplicate assignment of local wildcard port

Ticket #52342. problem: a local wildcard port could be assigned twice in case a socket using this port did exist over a period where all port numbers above and below this number had been assigned once.

solution: fix in code

files: tcp.cpp, tcp.h

products: all

riscs: none

1023 - Transferring VM calls could trap

Ticket #53064. problem: Transferring VM calls could trap

solution: Add NULL pointer access check

files: pbx_vm.cpp

products: all with PBX

risks: none

964 - Trap if T.38 timer expiry during closing of T.38 session

Ticket #52215. problem: If a T.38 timer expired right within the fraction of a ms which it takes to close the T.38 session, a trap happened

solution: Stop timer before closing session

files: media.cpp

products: all

risks: None

1066 - Trap when sending PRACK for provisional SIP response

Ticket #53459. Problem: Trap when trying to send PRACK for a provisional response for an obsolete INVITE.

Solution: Check state of INVITE transaction before handling provisional response.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

1028 - unset "don't fragment bit" in dummy ip header for rpcap

Ticket #53104. The "Don't fragment bit" of the dummy IP header for rpcap was set, which can cause some confusion, if one does not know, that this header is just a dummy header when reading the innovaphone wireshark trace.
This flag is now off.

1061 - Vulnerability with open UDP sockets used to send RTP from fixed port

Ticket #53412. If data was received on these ports it created a memory leak.

V7 Hotfix17 (73200.29)

1099 - directory search object transfer ignored cfu of called object

Ticket #54122. The transfer of the directory search object should use the transfer method in a way, that checks the called object for cfu etc. and this is done now.

1077 - H.323: Send DISC with inband info as PROGRESS

Ticket #53575. to allow inband announcements

1107 - memory leak when logging to a TCP log server which did connect but did not consume the sent data fast enough

Ticket #54304. too much data was buffered when a TCP log server accepted the connection but did process log data at a lower rate as it was produced (or no data at all).

1105 - One way voice with SRTP, and transfer executed by slowstart endpoint accross PBXs

Ticket #54283. Call from phone with SRTP configured and registration with password to a slowstart endpoint on another PBX, which does transfer back to another SRTP phone on original PBX causes the call between the two SRTP phones to be one-way-voice

1121 - Potential trap during boot

Ticket #54479. If flashman marks the first flash segment as unused (state=0) the device may trap during boot

1118 - SIP: Duplicate Call-ID on forked calls

Ticket #54456. Causes trouble when forked calls go to same destination.
INVITE may be considered as looped.

1116 - SIP: Media-negotiation after call transfer failed (no audio)

Ticket #54442. Re-negotiation after call transfer failed.
Results into no-audio condition.

1108 - Unintialized SRTP key during re-negotation after transfer

Ticket #54352. re-INVITE was sent with invalid crypto attribute

V7 Hotfix18 (70300.30)

1124 - Potential trap when removing CF cards while writing files

Ticket #54666. A file_event_close was sent twice, so that it was sent to an already deleted object.
Use a flag to prevent a second file_event_close.

V7 Hotfix19 (70300.31)

1147 - DTMF feature call completion can be also used for no response

Ticket #55309. The feature is not only usable after a busy call, but also after a call with no response.

1168 - flash variables may get lost after reboot (because of an earlier trap in the critical phase of flash garbage collection)

Ticket #55797. Two valid segments bearing the same data are left back when a fragmented segment is compacted into a new one and the box traps after the new segment has been validated but before the old segment has been marked invalid.
Because of a wrong comparison this situation was not resolved after reboot. Instead of deleting one of the segments the new segment was used until completely filled. Therafter all further allocations failed. This situation could only be cleared by a reset to factory defaults.
Now, if the flash user is permitted to use only one segment (for example VARS on most boxes) the old segment is invalidated and the new compacted segment remains. If the flash user is permitted to use more segments (for example LDAP) the new segment is invalidated because it's not known which of the old segments was compacted.

1148 - Gateway: divertingLeg2 was not passed in some cases

Ticket #55310. divertingLeg2 got lost during re-routing in Gateway.
E.g. routing each call over TONE caused the divertingLeg2 to disappear.

1169 - PBX potential trap when parsing SOAP XML

Ticket #55812. No child element found in SOAP XML

1149 - PBX Waiting: 'CFU disables operator' was not taken into account for 'Max Call/Operator(%)' - Update

Ticket #55313. If the CFU disables operator option is used, an operator with a configured CFU should be treated as if it was not in the operator group. It was still counted as operator for the Max Call/Operator feature.

1161 - SIP: Hide product information in reject responses

Ticket #55620. Don't be kind to SIP scan tools.

1145 - SIP: Outgoing call (early, not connected) was not canceled (sometimes) on ISDN interworking scenario

Ticket #55277. An incoming DISCONNECT with progress indicator did not caused the outgoing SIP call to be canceled.

1172 - some Compactflash cards not working with innovaphone cardslots

Ticket #55903. There are compactflash cards that don't respond 848Ah as General Configuration word to Identify Device Command.

1156 - TEL interface: '#11' not callable if feature codes enabled

Ticket #55537. If feature codes are enabled for a TEL interface, the number '#11' without anything else can not be dialled.
To fix please submit gateway's general page with the OK button or do a factory reset.

1150 - Update client option for short URL

Ticket #55324. For OEM http server the update client should not append additional options to the update server URL.

1059 - XML attribute "href" in PROPFIND response was not URL encoded

Ticket #53390. Problem: XML attribute "href" in PROPFIND response was not URL encoded.

Solution: URL-encode XML attribute "href" in PROPFIND response.

Files: servlet_webdav.cpp

Products affected: All gateways with CF card

Risk: No risk.

V7 Hotfix20 (70300.32)

1173 - Gateway: Trap if Name Out or other fields with very long content

Ticket #55941. A buffer overrun could happen if very long strings were used as input values

1178 - IP2x IP30x: Missing tones on BRI interface with SIP implementations that send RTP prior to coder negotiation

Ticket #56010. This is the problematic scenario:
The IP302 BRI interface is registered on a SIP proxy.
An outgoing call is placed, the SIP proxy sends a STATUS 180 Ringing without SDP information.
The remote side sends RTP data (with inband information) to the IP302.
This switches off the IP302 generated tone, but the remote tone is cannot be used since the SDP is missing in the STATUS 180 message.

Now we ignore RTP with unknown coder for switching off the tone.

1170 - Possible buffer overrun when reading/writing fat volumn id

Ticket #55858. There was a possible buffer overrun when reading/writing the fat volumn id.

1175 - SIP: Distinctive ring tones

Ticket #55948. Handling of "Alert-Info: internal".
Triggers special ring tone.

1179 - SIP: Switch to fax did not work in some cases

Ticket #56076. Sometimes switch to audio occured immediately after switch to t.38

V7 Hotfix21 (70300.33)

1249 - automatic or manual recording cannot be stopped if the recorded call is not the currently active call

Ticket #57685. Automatic or manual recording could not be stopped if the recorded call was not the currently active call.
If the Redial-key is used to toggle recording this is intended behaviour because otherwise the Redial-key could not be used to transfer the non-recorded active call.
If a 'Recording' function key is used to toggle recording there is no need for this restriction.

Now a 'Recording' function key stops automatically or manual started recording any case.

1206 - Disconnect from DTMF/ICP/Directory search object didn't work with mobility

Ticket #56883. The disconnect from the DTMF, ICP and Directory search objects didn't work with mobility, as it was wrongly called.

1248 - Gateway: If Moh Mode is configured set 'exclusive coder' checkmark as well on UI

Ticket #57654. The MOH Mode implies that exclusive coders are used

1201 - IP24, IP28: Trap if doing a tranfer for a pickup call

Ticket #56780. If a pickup was done (*0#) from an analog phone connected to a IP24, IP28 and this call was transfered afterward (R), a trap happened as soon as the transfer was executed either by R-4 or by hanging up

1227 - IP800 Bootcode: Start normal firmware if alternate bootcode runs

Ticket #57345. The minifirmware was started in this case, but this makes no sense in V7.
(In earlier versions this was a way show that there is a problem with the bootcode, but on V7 and later the bootcode/altbootcode is checksumed and restored if the checksum is bad).

1242 - PBX did not send REMOTE_HOLD/RETRIEVE_RESULT

Ticket #57599. This causes problems with some third party equipment, which expects these messages

1200 - PBX: CFNR configured at Waiting not executed correctly on transfer to Waiting

Ticket #56775. under some circumstances not executed at all and sometime without waiting for No Response Timeout

1198 - PBX: Only 8 IP Filters possible, no indication if maximum reached

Ticket #56764. Number increased to 32. If 32 Filters are configured no field to enter a new one is displayed

1199 - PBX: Trap if duplicate "Long Name" in Database

Ticket #56774. It may happen that on a replicated PBX temporarily multiple objects with the same Long Name (cn) exist. In the case the PBX restarted.

1217 - Protect TLS socket against collision of SOCKET_RECV and SOCKET_SHUTDOWN

Ticket #57130. It was possible that a collision of SOCKET_RECV from the application and SOCKET_SHUTDOWN from the TLS socket occured. This could lead to a trap because the application was already deleted when the SOCKET_RECV_RESULT was sent.

1235 - SIP: SDP attribut annexb=no was missing

Ticket #57533. If G.729 Annex B was disabled it must be explicitely announced,
because no mentioning annexb is interpreted as annexb=yes.

1243 - SNMP, ifSpeed wrong

Ticket #57610. SNMP, ifSpeed wrong

1222 - Upgrade V7 TLS

Ticket #57272. Multiple fixes that have been done in V8 before are now integrated into the V7 firmware.

1223 - v9 Replication Compliance

Ticket #57274. Fixes addressing UTF-8 conversions

V7 Hotfix22 (08-70300.34)

1268 - AD-replicator: xml-show-namingcontexts leaks memory

Ticket #58564. a memory leak occurred every time when clicked on Configuration/LDAP/Replicator(AD)/DN/"Show Options"

1278 - Call Intrusion across PBXs did not work (intrude call at slave from master)

Ticket #58710. There was a fix already for this, but this covered only intrude at master from slave.

1269 - Do not disconnect calls to directory search object from master/slave user

Ticket #58587. Calls from a master/slave user where disconnected by the directory search object.
These calls are allowed now.

1282 - DRAM /Firmware upload stops sometimes

Ticket #58769. Depending on the timing the upload hangs.
Seen with the innovaphone test program and minifirmware

1264 - Invalid duplicate DTMF object caused the PBX to trap

Ticket #58514. A false config with an invalid DTMF object (name like DTMF#pickup_group) caused the PBX to trap.
Such an object will be ignored now.

1267 - PBX dtmf group feature marks dynamic in groups

Ticket #58536. As the PBX dtmf group feature shows all dynamic in and out groups, the displayed name of dynamic in groups will be preceeded with '* ' now.

1290 - PBX: Don't apply Send Number to Recording calls

Ticket #58878. For recording it is usually needed to know the real number

1297 - Potential trap if routes with DTMF output combined with pause chars (',') are used for calls without channel or out-of-channels

Ticket #59012. In this situation pause digits are passed to a channel, which does not exits. This causes the trap.
Could also be dialed pause characters on a call-independent signaling.

1289 - send PROGRESS after CALL-PROC to stop 10s T310

Ticket #58839. sometimes too short to forward a call

1236 - SIP: Suppress Annex B of G.729 if "Silence Compression" is not enabled at the interface

Ticket #57540. Suppress Annex B of G.729 if "Silence Compression" is not enabled at the interface

1159 - T.38 doesnt work if the call is transferred from a IP-Phone to a fax device

Ticket #55569. Affects IP2x IP30x fax gateways, the ipphone needs no update

1295 - Trap on CF remove while files are deleted

Ticket #58984. When files are deleted from the CF card and the card is removed or has an error, the box could trap.

1266 - trap on late CHANNEL_INIT to relay_media_relay::serial_event()

Ticket #58524. A null pointer was referenced when a CHANNEL_INIT was passed to an object in closing state

V7 Hotfix23

1310 - H.323 slowstart avoid sending duplicate TerminalCapabilitySet messages

Ticket #59203. If a media re-negotiation happened on a remote system at a time the local H.245 channel was not even established, it could happen that a sequence of TCS, TCS0 and TCS again was sent to a calling system. This irritated especially a Cisco Call Manager.

This happened for example, if a call was received from the call manager on one PBX, which was routed to another PBX on which a CFNR was configured.

1311 - H.323 Slowstart media renegotiation did not work if TCS was not yet received

Ticket #59248. This caused a CFNR not being executed (call was cleared on the original called endpoint, but was not sent to new destination) for calls from Cisco Call Manager

1316 - H.323-Q.931-Interworking - display text provided in the Display Information Element of an ISDN Information Message on phone

Ticket #59506. The text provided in the Display Information Element of an ISDN Information Message was silently discarded. Now it is displayed in the phone status line.

1304 - H.323: Don't send a call-independent-signaling call without facilities

Ticket #59088. This could happen if a QSIG call was interworked, with facilities we do not support

1296 - Interworked Control-Calls without Facilities Shall Stop in Relay

Ticket #59009. Interworked Control-Calls without Facilities Shall Stop in Relay

1323 - PBX: Call was possible from registration as standby PBX

Ticket #59844. A standby PBX registers at the active PBX to check if it is alive. This registration could be misused for calls. It could be done with H.323 and SIP. This fix prohibits calls from this registration and allows registration with H.323 only

1321 - Phone IP150 - dialling numbers containing asterisks '*' does not work

Ticket #59768. if in offhook mode the asterisk key is pressed for a short time the key is ignored, if it is pressed longer it is evaluated as mute key.

1314 - Qsig, apply interface maps to ccRequest.numberA, ccRequest.numberB

Ticket #59407. Qsig, apply interface maps to ccRequest.numberA, ccRequest.numberB

1308 - send PROGRESS after CALL-PROC to stop 10s T310 - in ISDN Stack not PBX

Ticket #59195. sending PROGRESS in the PBX could have some unwanted side effects, like a Cisco Callmanager believing that there is actual in-band media available

1319 - SIP: Media negotiation problem in some early media scenarios

Ticket #59711. SIP/H323 interworking problem.
Call was terminated with "504 Server Time-out" and "Recovery on timer expiry (102)"

1315 - SNMP, ifSpeed wrong

Ticket #59504. SNMP, ifSpeed wrong

V7 Hotfix24

1336 - Gateway: Trap on early RELEASE from calling side

Ticket #60400. Trap when Notification Indicator is received with ALERT while peer call is released already.

1335 - PBX: Slave license update period too short

Ticket #60390. was 100s (v8) or 10s (v7) should be 10min

1344 - possible trap with enabled trace flag on CF checkdisc

Ticket #60513. The box could trap while checking the card, if the trace flag for CF0 was enabled.

V7 Hotfix25 (70300.37)

1367 - Calls redialled from call list were not set up with CLIR although CLIR was active for the original call

Ticket #61321. The CLIR setting of the original call was saved in the call list but not applied when the call was redialled from list.

1362 - Phone: Memory leak when deleting SIP registration

Ticket #61132. Failed to delete registration, but only if trying to delete during state "rgistration failed due to no response from server".

1383 - Qsig Leg2 Info decoding could fail

Ticket #61860. Qsig Leg2 Info decoding could fail

1364 - SIP: Bug in handling of re-direct responses

Ticket #61264. New remote port was not respected when maddr parameter was present in redirection URI.
E.g.

sip:662@10.0.77.46:4432;user=phone;transport=Tcp;maddr=10.0.77.46;x-mss-call-id=a515c882e909d311874700903306177f%4010.0.77.70

1371 - SIP: No overlap sending if 'sending complete' was declared

Ticket #61472. Do not start overlapping INVITE transaction for new dialing digit if 'sending complete' was indicated for the call.

1361 - SIP: Read PAI/PPI header when receiving MESSAGE request

Ticket #61086. Read PAI/PPI header when receiving MESSAGE request in order to get calling party identity

1360 - SIP: Trap when receicing provisional response for obsolete INVITE

Ticket #61035. In overlap dialing scenarios overlapping INVITE client transactions are used.
Same Call-ID, different CSeq and different To-URI.

V7 Hotfix26 (08-70300.38)

1413 - Diagnostic/Tracing on IP6000: Trace flag on TEL could not be cleared

Ticket #62914. once set, it could only be cleared with a !config change command

1396 - General btree library problem: Potential Trap if many outgoing registrations need to be retried

Ticket #62428. Actually the problem is in the commonly used btree library, but there are not that many cases in which the libray is used in a way that create the problem

1397 - PBX Waiting: Limited DTMF targets could be added using Internet Exporer

Ticket #62432. URL size limitiation of IE -> use POST instead

1407 - Possible trap on certain compact flash operations

Ticket #62703. There has been the possibility of a trap on certain compact flash file operations.
This trap has been fixed.

1409 - RPCAP uses system time instead of uptime now

Ticket #62745. A wireshark capture with RPCAP will now receive packet timestamps with the system time and not the uptime anymore.

1399 - SIP: Media negotiation failed when interworking with H.323

Ticket #62439. When calling from H323 to a user with multiple registrations
and the called user accepts on one of its (SIP type) secondary registration,
the media negotiation can fail.

V7 Hotfix27 (70300.46)

1429 - DECT: GUI password input limit info

Ticket #63349. The user password is truncated to 15 signs. Now the input field is limited and an info is shown.

1442 - DECT: Radio firmware for new handsets

Ticket #63577. The new radio firmware PCS05Ah accepts new handsets with the new IPEI number range.

1414 - H.323: Don't send a call-independent-signaling call without facilities and user-user information

Ticket #62961. This fix is related to the fix #59088.
A call-independent-signaling call without facilities should not be sent, but if it has got a user-user information, it should be sent.
This fixes the DECT messaging problem on the IP1200.

1438 - HTTP-Client: Bad encoding of uri parameter in digest authentication

Ticket #63469. Uri parameter in digest authentication was not URL encoded

1418 - HTTP-Server: Closing connection after transaction causes trouble with Webdav client

Ticket #63045. NetDrive client fails when uploading files

1470 - SIP: Allocated message size to small for INVITE redirect response (Avaya)

Ticket #63829. Memory allocation is a bit to tight to fit the message due to many Via headers.

INVITE sip:3003@192.168.150.140:2059;transport=UDP SIP/2.0
Record-Route: <sip:5793d7f@192.168.150.115;transport=udp;lr>
Record-Route: <sip:192.168.150.114:15060;lr;sap=315810451*1*016asm-callprocessing.sar1905633216~1304428214402~-1054885358~1>
Via: SIP/2.0/UDP 192.168.150.115;rport;branch=z9hG4bKC0A896726E7526620194612-AP;ft=192.168.150.115~13c4
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526620194612
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194610
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194609
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bK0e2106b7388e016424db9a29200-AP;ft=11786
Via: SIP/2.0/TCP 192.168.150.118;branch=z9hG4bK0e2106b7388e016424db9a29200;avaya-cm-term-reaction=shortcut
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bKC0A896726E7526620194608-AP;ft=12651
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526620194608
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194606
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194605
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bK0e2106b7388e018424db9a29200-AP;ft=11786
Via: SIP/2.0/TCP 192.168.150.118;branch=z9hG4bK0e2106b7388e018424db9a29200
Via: SIP/2.0/TCP 192.168.150.84;branch=z9hG4bK200_f1774512c29cc2e5cd78966_I2371
User-Agent: Avaya one-X Deskphone AVAYA-SM-6.1.1.0.611023 Avaya CM/R016x.00.1.510.1
Record-Route: <sip:5793d7f@192.168.150.115;transport=tcp;lr>
Record-Route: <sip:192.168.150.114:15060;transport=tcp;lr;sap=315810451*1*016asm-callprocessing.sar1905633216~1304428214355~-1054885362~1>
Record-Route: <sip:5793d7f@192.168.150.115;transport=tcp;lr>
Record-Route: <sip:192.168.150.118;transport=tcp;lr>
Session-Expires: 1800;refresher=uac
Content-Type: application/sdp
Content-Length: 215
...

1440 - SIP: Message buffer too small for REGISTER request for re-try with authentication

Ticket #63539. On some installations a change-of-nonce at server side may cause volatile "Registration down error" on client side.

1425 - SIP: Trap when session timer is used

Ticket #63271. Trap on collision of session timer and call release

1422 - SNMP, innoColdStart Trap to be sent only after sw failure or button reset

Ticket #63160. Settlement of a feature request to have the innoColdStart SNMP trap indicate severe reboot reasons only.

1415 - TCP: Ack was not sent under special conditions with re-transmissions

Ticket #62965. This could cause the breaking of a TCP connection in case of packet loss, even if the packet loss was not too bad

1416 - Trap when processing webdav requests

Ticket #62980. Trap when webdav request session were terminated irregularly.

1419 - Webdav: Bug when handling GET with Range header

Ticket #63131. When applied on a zero length file this response was returned:

HTTP/1.1 206 Partial Content
Date: Tue, 12 Apr 2011 14:52:23 GMT
Server: innovaphone Virtual Appliance / 9.00 dvl [xxx/1000/0]
Accept-Ranges: bytes
Content-Type: application/octet-stream
Content-Length: 0
Content-Range: bytes 0-4294967295/0

Error response "416 Requested Range Not Satisfiable" must be returned instead.

1420 - Webdav: Don't keep zero-length files open on server side

Ticket #63133. In case of large files, NetDrive performes GET operation between PUT0 and PUT.
The actual PUT was rejected with 500 error resonse then.

V7 Hotfix28

1637 - buffer overflow in fat32 method

Ticket #65344. The borders of a static buffer has been exceeded.

1499 - Media negotiation problem H.323 to SIP call, with reverse Media and media relay

Ticket #64124. a call without Media in both directions could be the result

1620 - SIP-H323 calls with SRTP: No media after multiple Hold/Retrieve

Ticket #65185. After first Hold/Retrieve there was no SRTP, after the next Hold/Retrieve very often no media

1531 - supress "Send Number" for calls triggered by a 'Dial' function key with 'Send as Control Call' checked

Ticket #64365. When using a 'Dial' function key with 'Send as Control Call' checked to control a call recording device the unique original calling party number must be passed to the recorder. The 'Send Number' configured in the the PBX user object may be the same for a group of phones and does not identify a certain phone.

1569 - TLS: Error on processing huge handshake messages

Ticket #64702. The current implementation does not work with handshake messages that are bigger than 8 kilobytes. Especially the CertificateRequest message that is used for MTLS can be bigger.

files: tls.cpp

V7 Hotfix29

8618 - Fax: Wrong decoding of T.38 error recovery IFP packet

The T.38 error recovery IFP packet is wrongly decoded. It can occur if a T.38 UDP frame is lost or swapped and can result in aborted fax connections. This is fixed now.

1584 - Incorrect rpcap timestamp after TRACE LOST messages

Ticket #64915. The RPCAP timestamp (Wireshark) after a TRACE LOST message was incorrect, as the TRACE LOST message contained an incorrect timestamp.

1694 - Message Waiting Interrogation: Result message coding wrong

Ticket #65912. a malformed message was displayed in wireshark

1276 - New flash S29GL256P90/S29GL128P90 on IP1200

Ticket #58643. This flash is used on new IP1200 devices.
Bootcode downgrade to older bootcode is disabled.
If the bootcode is downgraded the bootcode version is shown as 1013.

1695 - phone: disable call intrusion via partner key when recording is active

Ticket #65918. Call intrusion cannot be performed while recording is active:
- recording establishes a 3party conference between local party, remote party and recorder.
- call intrusion establishes a 3party conference between local party and the two remote parties
- recording and call intrusion at the same time would require a 4party conference which cannot be set up because the phone has only 2 DSP coder channels.

Now if any kind of recording is configured call intrusion is neither offered in 'recall' menu nor performed via partner key.

1750 - phone: Hexadecimal values instead of descriptive texts were displayed for some rare disconnect causes

Ticket #66343. "0x57 - unknow cause" was displayed instead of "user not a CUG member". Mainly german descriptive texts were missing.

1697 - SIP: Set CLIR if display string of From-URI contains "Anonymous"

Ticket #65925. Not only if userpart of From-URI contains "anonymous".

1651 - VM, Project script didn't run for endpoints having "Send Number" configured

Ticket #65456. VM, Project script didn't run for endpoints having "Send Number" configured

V7 Hotfix30 (70300.49)

1771 - Gateway: Trap in case of collision of hold and clearing from remote

Ticket #66642. This could happen on gateways with analog interfaces if the R-Key was pressed right when the other side hung up

V7 Hotfix31 (70300.50)

1847 - H.323 Malformed packet

Ticket #67803. The ASN.1 encoder had a bug under one special condition: For a constrained character string with a maximum length of more or equal to 16bits, with an effective length of zero, the padding for octett alignment was missing for the zero length bitfield containing the string.

In H.323 this only happens for the CallIdentity used for H.450 call transfer message in case of blind transfer without consultation.

This fix breaks compatibility with earlier versions, for this reason this fix is available for version 9,8,7 and 6.

If phones and PBX with versions containing and not containing this fix are mixed the following problems will occur:
- A blind transfer without consultation (initiated with the redial key) is not possible
- A call which was transfered without consultation is not displayed at the transfered-to phone as transfered

1846 - H.323: A name_id of length 0 resulted in invalid H.450 coding

Ticket #67796. An empty name identification received was forwarded in H.323 as invalid H.450. Such a name is now forwarded as 'name not available'.

1891 - phone: intrusion call started in handset mode is not terminated when going on hook when TAPI or operator run on PBX

Ticket #68249. With TAPI or operator running on the PBX the the signaling of a busy condition is changed such that a disconnect instead of a release is sent. The disconnect was not handled correctly, the hookswitch state was lost and the next on-hook signal was ignored. TThus teh call could be terminated with the disc-key only.

V7 Hotfix32 (70300.51)

1936 - H.450: Bad encoding of DivertingLegInformation4 arguments

Ticket #68868. DivertingLegInformation4 content coding was wrong.
Wireshark displayed it as malformed.

Note:
This fix causes interoperability problem with phones with older (non-fixed) firmware versions!
Phones also require an updated firmware if PBX is updated.

1957 - ISDN interop issue with SecuGATE LI 30 from Sirrix

Ticket #69168. The SecuGATE LI30 is sending/receiving ISDN INFO messages in Call Proceeding State (State 3 and state 9), which was not supported

1982 - PBX: Reject calls without media, if no known facility

Ticket #69477. Fixes compatibility issues between versions. For example presence subscription sessions from v8 phones being forwarded to voicemail

1929 - Phone: Changing config option /sip-hold does not call for reset

Ticket #68691. Reset is required and 'reset required" must be displayed.

1966 - SIP: NOTIFY sent after 302 moved temporarily

Ticket #69282. After processing "302 moved temporarily" on an outbound call a NOTIFY (sipfrag) was sent.

2009 - SIP: Trap when handling NOTIFY(application/qsig)

Ticket #69771. Traps if no progress indicator present in tunneled DISCONNECT message.

V7 Hotfix33 (70300.52)

2047 - Gateway: Forward Display Info received from ISDN Setup to H.323

Ticket #70562. needed for compatibility with SecuGATE LI30

2090 - H.323: Call Intrusion H.450 facility coding error

Ticket #71456. generated interop problem with v8 and higher

2115 - phone: display info provided by SETUP or CONNECT was ignored

Ticket #71727. only the display info provided by an INFO event was handled

V7 Hotfix34 (70300.53)

2222 - PBX: Forward original received ISDN display element to picking up or forwarded call

Ticket #73278. In the display element from ISDN there could be vital information from equipment like crypto gateways. This should be available also if the call was picked or forwarded.

2143 - Scheduling improved to avoid processes not being scheduled during long flashman operations

Ticket #72243. In version 7 it could happen, that IP and other processes were not scheduled any more during periods of long flashman operations (e.g. bootcode update or reorganizing flash).

In version 8 and higher there was already a fix for this problem, but this included special handling of the flashman priority level, which was not a good solution even if it worked.

2138 - TCP: Roundtrip measurement wrong in case of packet loss

Ticket #71985. In case of packet loss, way to high round trip values were measured. If the packet-loss was to high, this could result in a constantly increasing re-transmission timeout value.

2180 - update - scfg command could hang when the HTTP session was broken or prematurely closed by the server

Ticket #72708. in consequence update script processing was stopped until reboot

V7 Hotfix35 (70300.54)

2396 - Gateway: Conference interface, no voice

Ticket #76419. The ADSP firmware is changed to version 122. This fixes a bug in the conference interface of IP6000/IP6010/... which results in conference calls without voice in one direction for a single member.

2330 - TLS: Duplicate alert message on malformed ClientHelloV2

Ticket #75509. Only one alert should be sent per session.

2303 - TLS: Flow control for incoming data

Ticket #75004. The TLS socket has to wait for the application to process incoming data before sending the next RECV.

2331 - TLS: Improved negotiation of protocol version

Ticket #75510. TLS server unnecessarily rejected ClientHello messages with TLS 1.1 and higher. Instead of rejecting it should tell the client that it wants to use TLS 1.0.

2332 - TLS: Skip empty records

Ticket #75511. TLS record layer should ignore records with zero length without doing anything.

2310 - VM: <pbx-upd-obj type="cfu"..> without effect when invoked multiple times

Ticket #75121. Statement <pbx-upd-obj type="cfu"..> failed to work properly after being used for diversion manipulation multiple times within a single script session.

V7 Hotfix36 (70300.55)

2397 - Avoid Snmp decode error trace outputs

Ticket #76435. Avoid Snmp decode error trace outputs when receiving requests > SNMPv1

2439 - IPVA, IP800, IP6000, IP6010: Typo RT30 instead of RT40

Ticket #77027. The routing table entry RT30 was duplicate and RT40 was missing. This causes config changes to be lost if more then 29 routes are configured

V7 Hotfix37 (70300.56)

2507 - TLS flow control damaged in versions 7 and 8

Ticket #78377. The following fix was not good:
#75004: TLS: Flow control for incoming data

Therefore TLS did not work correctly in the following releases:
v7hotfix35 and v7hotfix36
v8hotfix23 and v8hotfix24

No problem in version 9.

V7 Hotfix38 (70607)

2628 - IP6000/IP800: New DSP code to solve fax interop issue

Ticket #79785. Update to DSP code 600.04 and the dsp driver/headerfiles as in version 8

V7- End of life