Reference:Release Notes Firmware: Difference between revisions
m (regular roadmap update) |
m (regular roadmap update) |
||
Line 14: | Line 14: | ||
=== CDR from PBX === | === CDR from PBX === | ||
Line 50: | Line 39: | ||
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/> | 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 === | ||
{| | {| | ||
Line 57: | Line 46: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=4280 4280] | ||
|} | |} | ||
works with secure signaling for key exchange | |||
=== | === Handling of certificates === | ||
{| | {| | ||
Line 68: | Line 57: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=14920 14920] | ||
|} | |} | ||
ASN.1 definition, etc.<br/>Needed for TLS | |||
=== | === 802.1x Port Authentication === | ||
{| | {| | ||
Line 79: | Line 68: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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:'' | ''Status:'' | ||
EAP-MD5, as tested with Foundry FastIron 4802 | |||
=== | === Bootcode with Full IP/HTTP functionality === | ||
{| | {| | ||
Line 92: | Line 81: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 103: | Line 92: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | ||
{| | {| | ||
Line 116: | Line 103: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | ||
{| | {| | ||
Line 127: | Line 114: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 138: | Line 138: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 149: | Line 151: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 160: | Line 162: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 171: | Line 173: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=31655 31655] | ||
|} | |} | ||
- Find other Location URLs<br/>- ...<br/> | |||
=== | === pbx dtmf feature codes object === | ||
{| | {| | ||
Line 184: | Line 184: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === Other new Features === | ||
Line 402: | Line 402: | ||
=== | === IP72: new display driver for LCD NT75451 === | ||
{| | {| | ||
Line 409: | Line 409: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=33028 33028] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 420: | Line 420: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35603 35603] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 431: | Line 431: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35634 35634] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 442: | Line 442: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 453: | Line 453: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35686 35686] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 464: | Line 464: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35739 35739] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 475: | Line 475: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35742 35742] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 486: | Line 486: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35749 35749] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 497: | Line 499: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35752 35752] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 508: | Line 510: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
=== H.323 | === Potential Trap if H.323 Signaling entity deleted when calls active === | ||
{| | {| | ||
Line 519: | Line 521: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 530: | Line 532: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 541: | Line 543: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 552: | Line 554: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 563: | Line 565: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 574: | Line 576: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 585: | Line 587: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 596: | Line 598: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === Memory leak in Dect === | ||
{| | {| | ||
Line 607: | Line 609: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. === | ||
{| | {| | ||
Line 618: | Line 620: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 629: | Line 631: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 640: | Line 642: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35829 35829] | ||
|} | |} | ||
problem: If | 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 === | ||
{| | {| | ||
Line 651: | Line 653: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 662: | Line 664: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 673: | Line 675: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35838 35838] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 684: | Line 686: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35839 35839] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 695: | Line 697: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 706: | Line 708: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35858 35858] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 717: | Line 719: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35872 35872] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 728: | Line 730: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35880 35880] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 739: | Line 741: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35882 35882] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 750: | Line 752: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 761: | Line 763: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 772: | Line 774: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35917 35917] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 783: | Line 785: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 794: | Line 796: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 805: | Line 807: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
=== OEM specific | === Trap if no PBX line in OEM specific state === | ||
{| | {| | ||
Line 816: | Line 818: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35942 35942] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 827: | Line 829: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 838: | Line 840: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35950 35950] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 849: | Line 851: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 860: | Line 862: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=35958 35958] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 871: | Line 873: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
=== OEM | === Need to set H.323 terminal_type for OEM === | ||
{| | {| | ||
Line 882: | Line 884: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 893: | Line 895: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36041 36041] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 904: | Line 908: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 915: | Line 919: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 926: | Line 930: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 937: | Line 941: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 948: | Line 952: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36103 36103] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 959: | Line 963: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36105 36105] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 970: | Line 974: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36107 36107] | ||
|} | |} | ||
Problem: | 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 | === OEM specific trunk redundancy feature === | ||
{| | {| | ||
Line 981: | Line 985: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36111 36111] | ||
|} | |} | ||
Problem: | 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 registration | === OEM specific change of PBX registration configuration for coder selection === | ||
{| | {| | ||
Line 992: | Line 996: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36115 36115] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,003: | Line 1,007: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36118 36118] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,014: | Line 1,018: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36120 36120] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,025: | Line 1,029: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36121 36121] | ||
|} | |} | ||
<br/> | 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 === | ||
{| | {| | ||
Line 1,036: | Line 1,040: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,047: | Line 1,051: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36123 36123] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,058: | Line 1,062: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,069: | Line 1,073: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,080: | Line 1,084: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,091: | Line 1,095: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,102: | Line 1,106: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,113: | Line 1,117: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 1,124: | Line 1,128: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === IP800: Lost trace after trap to minifirmware and load to DRAM === | ||
Line 1,139: | Line 1,143: | ||
Problem: Stack was initialized <br/><br/>Solution: Stack init removed<br/><br/>Files: ip800.cpp<br/><br/>Products affected: IP800<br/> | 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 === | ||
{| | {| | ||
Line 1,146: | Line 1,150: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36201 36201] | ||
|} | |} | ||
Problem: | 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) === | ||
{| | {| | ||
Line 1,159: | Line 1,161: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36210 36210] | ||
|} | |} | ||
Problem: | 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) === | ||
{| | {| | ||
Line 1,170: | Line 1,172: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36216 36216] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,181: | Line 1,183: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36219 36219] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,192: | Line 1,194: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,203: | Line 1,205: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36235 36235] | ||
|} | |} | ||
problem: | 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) === | ||
{| | {| | ||
Line 1,214: | Line 1,216: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36238 36238] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,225: | Line 1,227: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36251 36251] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,236: | Line 1,238: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,247: | Line 1,249: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36259 36259] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,258: | Line 1,260: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36260 36260] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,269: | Line 1,271: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36261 36261] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,280: | Line 1,282: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36264 36264] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,291: | Line 1,293: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,302: | Line 1,304: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,313: | Line 1,315: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36283 36283] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,326: | Line 1,326: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36285 36285] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,337: | Line 1,337: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36312 36312] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,348: | Line 1,348: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,359: | Line 1,359: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === Trap if too many licenses installed and slave obtains license from master === | ||
{| | {| | ||
Line 1,370: | Line 1,370: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,381: | Line 1,381: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36357 36357] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,392: | Line 1,392: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,403: | Line 1,403: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36361 36361] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,414: | Line 1,414: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36385 36385] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,425: | Line 1,425: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,436: | Line 1,436: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
== Bug Fixes == | == Bug Fixes == | ||
Line 1,452: | Line 1,452: | ||
=== | === OEM specific registration handling if a trunk goes up === | ||
{| | {| | ||
Line 1,459: | Line 1,459: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
=== after | === R-key usage after handover in alerting state === | ||
{| | {| | ||
Line 1,470: | Line 1,470: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,481: | Line 1,481: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,492: | Line 1,492: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,503: | Line 1,503: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,514: | Line 1,514: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36588 36588] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,525: | Line 1,525: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36606 36606] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,536: | Line 1,536: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === Trap when changing H.323 tracing while H.323 calls are up === | ||
Line 1,550: | Line 1,550: | ||
|} | |} | ||
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 | 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 === | === Obtain license from master did not work on standby PBX === | ||
Line 1,573: | Line 1,584: | ||
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 | 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 === | ||
{| | {| | ||
Line 1,580: | Line 1,591: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36631 36631] | ||
|} | |} | ||
problem: If a | 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 | === PBX Routing to a object without Node/PBX not possible from Slave to Master === | ||
{| | {| | ||
Line 1,591: | Line 1,602: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36648 36648] | ||
|} | |} | ||
problem: If a call | 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 === | ||
{| | {| | ||
Line 1,602: | Line 1,613: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,613: | Line 1,624: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36654 36654] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,624: | Line 1,635: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36658 36658] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,635: | Line 1,646: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36661 36661] | ||
|} | |} | ||
problem: If | 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 === | ||
{| | {| | ||
Line 1,646: | Line 1,657: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36688 36688] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,657: | Line 1,668: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36691 36691] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,668: | Line 1,679: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,679: | Line 1,692: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36700 36700] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,690: | Line 1,703: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36702 36702] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,701: | Line 1,714: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,712: | Line 1,725: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36708 36708] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,723: | Line 1,736: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,734: | Line 1,747: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36772 36772] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,745: | Line 1,758: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36805 36805] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,756: | Line 1,769: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36806 36806] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,767: | Line 1,780: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36807 36807] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,778: | Line 1,791: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36811 36811] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 1,789: | Line 1,802: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,800: | Line 1,813: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,811: | Line 1,824: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | |||
{| | {| | ||
Line 1,822: | Line 1,846: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36844 36844] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,833: | Line 1,857: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36847 36847] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,844: | Line 1,868: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36853 36853] | ||
|} | |} | ||
Problem: | 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 === | === Dect frequency and other bases GUI page === | ||
Line 1,892: | Line 1,916: | ||
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. | 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 === | ||
{| | {| | ||
Line 1,899: | Line 1,923: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,910: | Line 1,934: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,921: | Line 1,945: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === OEM specific trunk location registration === | ||
{| | {| | ||
Line 1,932: | Line 1,956: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=36990 36990] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,943: | Line 1,967: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 1,954: | Line 1,978: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37016 37016] | ||
|} | |} | ||
Problem: | 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 | === OEM specific cause code mapping === | ||
{| | {| | ||
Line 1,965: | Line 1,989: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37051 37051] | ||
|} | |} | ||
Problem: | 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->Quickdial-Object->PSTN Calls May Fail === | ||
{| | {| | ||
Line 1,976: | Line 2,000: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37106 37106] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,987: | Line 2,011: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37112 37112] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 1,998: | Line 2,022: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,009: | Line 2,033: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37130 37130] | ||
|} | |} | ||
Problem: | 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) === | ||
{| | {| | ||
Line 2,020: | Line 2,044: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === hide option in v7 hides more than in v6, user and phone settings as well === | ||
Line 2,035: | Line 2,059: | ||
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/> | 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<num> in the url parameter of "mod cmd UP0 scfg" overrides the character following <num> === | ||
{| | {| | ||
Line 2,042: | Line 2,066: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,053: | Line 2,077: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37169 37169] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,064: | Line 2,088: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,075: | Line 2,099: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,086: | Line 2,110: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,097: | Line 2,121: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37326 37326] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,108: | Line 2,132: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37327 37327] | ||
|} | |} | ||
problem: | 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" === | ||
{| | {| | ||
Line 2,119: | Line 2,143: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,130: | Line 2,154: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37365 37365] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 2,143: | Line 2,165: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,154: | Line 2,176: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37526 37526] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 2,165: | Line 2,187: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37586 37586] | ||
|} | |} | ||
Problem: the | 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 === | ||
{| | {| | ||
Line 2,176: | Line 2,200: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,189: | Line 2,211: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,200: | Line 2,222: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
=== H. | === Workaround for OEM H.323 bug (OLC before MSD) === | ||
{| | {| | ||
Line 2,211: | Line 2,233: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,222: | Line 2,244: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37643 37643] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,233: | Line 2,255: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37658 37658] | ||
|} | |} | ||
problem: | 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 === | === Diverting Info not forwarded by Gateway === | ||
Line 2,248: | Line 2,270: | ||
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 | 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 === | ||
{| | {| | ||
Line 2,255: | Line 2,277: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37677 37677] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,266: | Line 2,288: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37680 37680] | ||
|} | |} | ||
problem: When | 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 === | ||
{| | {| | ||
Line 2,277: | Line 2,299: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37685 37685] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 2,288: | Line 2,310: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,299: | Line 2,321: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,310: | Line 2,332: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,321: | Line 2,343: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37706 37706] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,332: | Line 2,354: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,343: | Line 2,365: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37744 37744] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,354: | Line 2,376: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,365: | Line 2,387: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,376: | Line 2,398: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37790 37790] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,387: | Line 2,409: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37793 37793] | ||
|} | |} | ||
problem: | 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) === | ||
{| | {| | ||
Line 2,398: | Line 2,420: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37796 37796] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,409: | Line 2,431: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37798 37798] | ||
|} | |} | ||
problem: | 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 | ||
== Bug Fixes == | |||
= V7 Hotfix 3 (09-70300.11) = | |||
Changes included in Version 7 Hotfix3 | |||
[http://mantis.innovaphone.com/view.php?id=37809 Definition] | |||
== New Features == | |||
=== | === A PBX Standby Slave using master licenses should use licenses obtained from PBX it is backing up === | ||
{| | {| | ||
Line 2,420: | Line 2,454: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37810 37810] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,431: | Line 2,465: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37813 37813] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,454: | Line 2,476: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37816 37816] | ||
|} | |} | ||
problem: A | 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 === | ||
{| | {| | ||
Line 2,465: | Line 2,487: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37819 37819] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,476: | Line 2,498: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37836 37836] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,487: | Line 2,509: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === OEM specific PBX options === | ||
{| | {| | ||
Line 2,498: | Line 2,522: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === Changing PBX/General options can remove automatically generated licenses === | ||
Line 2,513: | Line 2,537: | ||
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 | 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 === | ||
{| | {| | ||
Line 2,520: | Line 2,544: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37863 37863] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,531: | Line 2,555: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37874 37874] | ||
|} | |} | ||
problem: In some | 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 === | ||
{| | {| | ||
Line 2,542: | Line 2,566: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,553: | Line 2,577: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,564: | Line 2,588: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,575: | Line 2,599: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,586: | Line 2,610: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | === IP1200 Trap with MWI event (MSF) === | ||
Line 2,612: | Line 2,636: | ||
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. | 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 === | ||
{| | {| | ||
Line 2,619: | Line 2,643: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 2,630: | Line 2,654: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37925 37925] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,641: | Line 2,665: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,654: | Line 2,676: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37948 37948] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,665: | Line 2,687: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37956 37956] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,676: | Line 2,698: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
== Bug Fixes == | == Bug Fixes == | ||
Line 2,714: | Line 2,714: | ||
=== | === IP72: WLAN page breaks after hitting the OK button below === | ||
{| | {| | ||
Line 2,721: | Line 2,721: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37143 37143] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,732: | Line 2,732: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,743: | Line 2,745: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,754: | Line 2,756: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37980 37980] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 2,765: | Line 2,767: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37985 37985] | ||
|} | |} | ||
Problem: | 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 === | === Memory leak if multiple registrations of MOH device to PBX === | ||
Line 2,802: | Line 2,793: | ||
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 | 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) === | ||
{| | {| | ||
Line 2,809: | Line 2,800: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,820: | Line 2,811: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=37999 37999] | ||
|} | |} | ||
problem: | 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") === | ||
{| | {| | ||
Line 2,831: | Line 2,822: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,842: | Line 2,833: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38038 38038] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,853: | Line 2,844: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38040 38040] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,864: | Line 2,855: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38043 38043] | ||
|} | |} | ||
problem: | 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 <hours> does not work === | ||
{| | {| | ||
Line 2,875: | Line 2,866: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,886: | Line 2,879: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,897: | Line 2,890: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38074 38074] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,908: | Line 2,901: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,919: | Line 2,912: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38104 38104] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,930: | Line 2,923: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,941: | Line 2,934: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,952: | Line 2,945: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | ||
{| | {| | ||
Line 2,963: | Line 2,956: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 2,974: | Line 2,969: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38190 38190] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,985: | Line 2,980: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38194 38194] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 2,996: | Line 2,991: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38198 38198] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,007: | Line 3,002: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38214 38214] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,018: | Line 3,013: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38216 38216] | ||
|} | |} | ||
problem: | 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: | === PBX Waiting: DTMF destination using '.' to match any digit combined with destination name did not work === | ||
{| | {| | ||
Line 3,029: | Line 3,024: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38217 38217] | ||
|} | |} | ||
problem: | 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 | ||
=== PBX | === H.323 discovery or registration with password does not work thru ETH1 on the PBX === | ||
{| | {| | ||
Line 3,040: | Line 3,035: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38219 38219] | ||
|} | |} | ||
problem: If the | 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 === | ||
{| | {| | ||
Line 3,051: | Line 3,046: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,064: | Line 3,057: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,075: | Line 3,070: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,086: | Line 3,083: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38284 38284] | ||
|} | |} | ||
Problem: | 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 | === OEM specific GUI trunk state === | ||
{| | {| | ||
Line 3,097: | Line 3,094: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38285 38285] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,108: | Line 3,105: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,119: | Line 3,118: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38359 38359] | ||
|} | |} | ||
Problem: | 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 === | === OEM specific Dect endpoint idle display === | ||
Line 3,145: | Line 3,155: | ||
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. | 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 === | ||
{| | {| | ||
Line 3,152: | Line 3,162: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38623 38623] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,163: | Line 3,173: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38634 38634] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,174: | Line 3,184: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,185: | Line 3,195: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,196: | Line 3,206: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,207: | Line 3,217: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,218: | Line 3,228: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,229: | Line 3,239: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,240: | Line 3,250: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38781 38781] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,251: | Line 3,261: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38796 38796] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,262: | Line 3,272: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38805 38805] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,273: | Line 3,283: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 3,284: | Line 3,294: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,295: | Line 3,305: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,306: | Line 3,316: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,317: | Line 3,327: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,328: | Line 3,338: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,341: | Line 3,349: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | ||
{| | {| | ||
Line 3,352: | Line 3,360: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,363: | Line 3,373: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,376: | Line 3,384: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,389: | Line 3,395: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,402: | Line 3,406: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,415: | Line 3,417: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,428: | Line 3,428: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,439: | Line 3,439: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=38941 38941] | ||
|} | |} | ||
Description: | 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 <pbx-im> causes trap === | ||
{| | {| | ||
Line 3,452: | Line 3,450: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39002 39002] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,465: | Line 3,461: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,476: | Line 3,474: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,487: | Line 3,485: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39081 39081] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,498: | Line 3,496: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39092 39092] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,509: | Line 3,507: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39096 39096] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,520: | Line 3,518: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,531: | Line 3,529: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,542: | Line 3,540: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,553: | Line 3,551: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,564: | Line 3,562: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,575: | Line 3,573: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39130 39130] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,586: | Line 3,584: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39140 39140] | ||
|} | |} | ||
Description: | 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 === | ||
{| | {| | ||
Line 3,597: | Line 3,597: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39143 39143] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,608: | Line 3,608: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39152 39152] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,619: | Line 3,619: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,630: | Line 3,630: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39161 39161] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,643: | Line 3,641: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39165 39165] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,654: | Line 3,652: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39185 39185] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,665: | Line 3,665: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
== Bug Fixes == | == Bug Fixes == | ||
Line 3,681: | Line 3,681: | ||
=== | === Missing attribute "entity" in dialog information XML === | ||
{| | {| | ||
Line 3,688: | Line 3,688: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,701: | Line 3,699: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,712: | Line 3,710: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,723: | Line 3,721: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,734: | Line 3,732: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,745: | Line 3,743: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39373 39373] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,756: | Line 3,756: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,767: | Line 3,767: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39428 39428] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,778: | Line 3,778: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39438 39438] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,789: | Line 3,789: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,800: | Line 3,800: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,813: | Line 3,811: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39472 39472] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,824: | Line 3,822: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39476 39476] | ||
|} | |} | ||
problem: even | 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 === | ||
{| | {| | ||
Line 3,837: | Line 3,833: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39478 39478] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 3,850: | Line 3,844: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39536 39536] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,861: | Line 3,855: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,872: | Line 3,866: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39541 39541] | ||
|} | |} | ||
Problem: | 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' === | ||
{| | {| | ||
Line 3,883: | Line 3,877: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,894: | Line 3,890: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,905: | Line 3,903: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,916: | Line 3,914: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39561 39561] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 3,927: | Line 3,925: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,938: | Line 3,936: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
== Bug Fixes == | == Bug Fixes == | ||
Line 3,954: | Line 3,954: | ||
=== | === no ringing voltage after few days uptime === | ||
{| | {| | ||
Line 3,961: | Line 3,961: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,972: | Line 3,974: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 3,985: | Line 3,985: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39645 39645] | ||
|} | |} | ||
problem: | 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" === | ||
{| | {| | ||
Line 3,996: | Line 3,998: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39667 39667] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,007: | Line 4,009: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39686 39686] | ||
|} | |} | ||
problem: | 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 === | === PBX CF Loop was detected with CFB, which was not even executed === | ||
Line 4,022: | Line 4,026: | ||
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 | 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 === | ||
{| | {| | ||
Line 4,029: | Line 4,033: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39765 39765] | ||
|} | |} | ||
problem: A | 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 === | ||
{| | {| | ||
Line 4,040: | Line 4,044: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39783 39783] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,051: | Line 4,057: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39835 39835] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,062: | Line 4,070: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39861 39861] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,073: | Line 4,083: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39878 39878] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,084: | Line 4,096: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39932 39932] | ||
|} | |} | ||
problem: | 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) === | ||
{| | {| | ||
Line 4,095: | Line 4,109: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39983 39983] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,106: | Line 4,120: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=39986 39986] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,117: | Line 4,131: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40006 40006] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,128: | Line 4,142: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40108 40108] | ||
|} | |} | ||
problem: A | 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 === | ||
{| | {| | ||
Line 4,139: | Line 4,153: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,150: | Line 4,164: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,161: | Line 4,175: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,172: | Line 4,186: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40124 40124] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,183: | Line 4,197: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,194: | Line 4,208: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40135 40135] | ||
|} | |} | ||
problem: | 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 | ||
=== PBX | === IP-DECT &amp; SIP: Distinctive Ringing support for several OEM PBX === | ||
{| | {| | ||
Line 4,205: | Line 4,219: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,216: | Line 4,230: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,227: | Line 4,241: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,238: | Line 4,252: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === IP-DECT Master handover canceled statistic === | ||
{| | {| | ||
Line 4,249: | Line 4,263: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,260: | Line 4,274: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40202 40202] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,271: | Line 4,285: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,282: | Line 4,296: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40247 40247] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,293: | Line 4,307: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === IP-DECT Null pointer trap === | ||
{| | {| | ||
Line 4,304: | Line 4,318: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40271 40271] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,315: | Line 4,329: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40275 40275] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,326: | Line 4,340: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,337: | Line 4,351: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,348: | Line 4,364: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,359: | Line 4,375: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40482 40482] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,370: | Line 4,386: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,381: | Line 4,397: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,392: | Line 4,408: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40609 40609] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,403: | Line 4,419: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,414: | Line 4,430: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,425: | Line 4,441: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40729 40729] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,436: | Line 4,452: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,447: | Line 4,463: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 OEM | === IP-DECT Null pointer trap in Master (OEM) === | ||
{| | {| | ||
Line 4,458: | Line 4,476: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40779 40779] | ||
|} | |} | ||
Problem: OEM | 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 debug output === | === IP-DECT OEM module debug output trap === | ||
{| | {| | ||
Line 4,469: | Line 4,487: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40790 40790] | ||
|} | |} | ||
Problem: | 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. | ||
=== IP-DECT | === After power up alt-gk was used instead of primary with IP-DECT === | ||
{| | {| | ||
Line 4,480: | Line 4,498: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === IP-DECT OEM module Mobmaster Master/Standby-Master login === | ||
{| | {| | ||
Line 4,491: | Line 4,509: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40943 40943] | ||
|} | |} | ||
Problem: | 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 | === IP-DECT Null pointer trap in Master with anonymous handsets === | ||
{| | {| | ||
Line 4,502: | Line 4,520: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40947 40947] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,513: | Line 4,531: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=40982 40982] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,524: | Line 4,542: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,535: | Line 4,553: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,546: | Line 4,564: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41026 41026] | ||
|} | |} | ||
Problem: | 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) === | ||
{| | {| | ||
Line 4,557: | Line 4,575: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,570: | Line 4,586: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41062 41062] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,581: | Line 4,597: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41065 41065] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,592: | Line 4,608: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41068 41068] | ||
|} | |} | ||
problem: | 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:'' | ''Status:'' | ||
checked in to 8.00, 7.00, 08-70300 | checked in to 8.00,7.00,08-70300 | ||
=== | === DGPN Mapping Produced Nonsense Numbers === | ||
{| | {| | ||
Line 4,605: | Line 4,621: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,618: | Line 4,632: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,631: | Line 4,643: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41144 41144] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,644: | Line 4,654: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 4,657: | Line 4,665: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
=== Trap | === Potential Trap in RTP if error logging happens during call clearing === | ||
{| | {| | ||
Line 4,670: | Line 4,676: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41287 41287] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,683: | Line 4,687: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41288 41288] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,696: | Line 4,698: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,709: | Line 4,709: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,722: | Line 4,720: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41344 41344] | ||
|} | |} | ||
problem: The | 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 === | ||
{| | {| | ||
Line 4,735: | Line 4,731: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41346 41346] | ||
|} | |} | ||
problem: with | 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:'' | ''Status:'' | ||
checked in to 8.00,7.00,08-70300 | checked in to 8.00,7.00,08-70300 | ||
=== | === Wrong redirecting number on retry of recall === | ||
{| | {| | ||
Line 4,748: | Line 4,744: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41357 41357] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,761: | Line 4,755: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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:'' | ''Status:'' | ||
PBX voice mail sends CN packets during message recording. | |||
=== | === PBX: CDR missing some importent Information if call is forwarded by Waiting === | ||
{| | {| | ||
Line 4,774: | Line 4,768: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,785: | Line 4,779: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41483 41483] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,796: | Line 4,790: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41485 41485] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,807: | Line 4,801: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,818: | Line 4,812: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,829: | Line 4,823: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41733 41733] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,840: | Line 4,834: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,851: | Line 4,847: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,862: | Line 4,860: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41810 41810] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,873: | Line 4,871: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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' === | ||
{| | {| | ||
Line 4,884: | Line 4,884: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41875 41875] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 4,895: | Line 4,895: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41881 41881] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,906: | Line 4,906: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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" === | ||
{| | {| | ||
Line 4,917: | Line 4,919: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41886 41886] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,928: | Line 4,930: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=41921 41921] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,939: | Line 4,941: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,950: | Line 4,952: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 4,961: | Line 4,965: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42013 42013] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,972: | Line 4,976: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42051 42051] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 4,985: | Line 4,987: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
== Bug Fixes == | == Bug Fixes == | ||
Line 5,003: | Line 5,003: | ||
=== | === when transparent recording for external calls was configured, internal calls to voice mail were recorded too === | ||
{| | {| | ||
Line 5,010: | Line 5,010: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42180 42180] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,021: | Line 5,023: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42216 42216] | ||
|} | |} | ||
problem: | 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 === | === checkmark "Phone/Preferences/Keep Calling Party Info on Pickup Key" cannot be cleared === | ||
Line 5,051: | Line 5,051: | ||
=== PBX-SOAP: Number update missing for overlap dialing === | === PBX-SOAP: Number update missing for overlap dialing === | ||
Line 5,129: | Line 5,107: | ||
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 | 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 === | ||
{| | {| | ||
Line 5,136: | Line 5,114: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42273 42273] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,147: | Line 5,125: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,158: | Line 5,136: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42414 42414] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,169: | Line 5,147: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42420 42420] | ||
|} | |} | ||
problem: | 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; uninitialized netbios address IP72-00-00-00 === | ||
{| | {| | ||
Line 5,180: | Line 5,158: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42483 42483] | ||
|} | |} | ||
problem: | problem: alarms originating from IP72 carry wrong & 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 === | ||
{| | {| | ||
Line 5,191: | Line 5,169: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42503 42503] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,202: | Line 5,182: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42571 42571] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,213: | Line 5,195: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42597 42597] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,224: | Line 5,208: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,235: | Line 5,219: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42640 42640] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,246: | Line 5,232: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=42669 42669] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,257: | Line 5,245: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. === | ||
{| | {| | ||
Line 5,268: | Line 5,256: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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) === | ||
{| | {| | ||
Line 5,279: | Line 5,267: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,290: | Line 5,278: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,301: | Line 5,289: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,312: | Line 5,300: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | === IP-DECT OEM trunk facility messages === | ||
{| | {| | ||
Line 5,323: | Line 5,311: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,334: | Line 5,322: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,345: | Line 5,333: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43093 43093] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,356: | Line 5,344: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43095 43095] | ||
|} | |} | ||
problem: | 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" === | ||
{| | {| | ||
Line 5,367: | Line 5,355: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,378: | Line 5,366: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43124 43124] | ||
|} | |} | ||
problem: | 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:'' | ''Status:'' | ||
checked in to 8.00,7.00,08-70300 | checked in to 8.00,7.00,08-70300 | ||
=== | === Problem configuring public compact flash access === | ||
{| | {| | ||
Line 5,391: | Line 5,379: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43274 43274] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,404: | Line 5,390: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43292 43292] | ||
|} | |} | ||
problem: the | 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) === | ||
{| | {| | ||
Line 5,417: | Line 5,401: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43324 43324] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,430: | Line 5,412: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43342 43342] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,443: | Line 5,423: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43355 43355] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,456: | Line 5,434: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43386 43386] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,469: | Line 5,445: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43428 43428] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color=" | |<font><font color="green">Closed</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,491: | Line 5,467: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43509 43509] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,502: | Line 5,478: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43623 43623] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,513: | Line 5,489: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=43797 43797] | ||
|} | |} | ||
problem: | 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 / === | ||
{| | {| | ||
Line 5,524: | Line 5,502: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |||
=== Other new Features === | |||
=== 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. | |||
=== Other new Features === | |||
{| | {| | ||
Line 5,549: | Line 5,549: | ||
=== | === SIP endpoint remains on hold after transfer (e.g. Bria) === | ||
{| | {| | ||
Line 5,556: | Line 5,556: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=45856 45856] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,567: | Line 5,567: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=45863 45863] | ||
|} | |} | ||
problem: | 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. | ||
=== SIP | === Disconnect of incoming SIP call fails if ACK was not received yet === | ||
{| | {| | ||
Line 5,578: | Line 5,578: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=45883 45883] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,589: | Line 5,589: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=45900 45900] | ||
|} | |} | ||
problem: | 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 | ||
== Bug Fixes == | == Bug Fixes == | ||
Line 5,627: | Line 5,627: | ||
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 | 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 === | ||
{| | {| | ||
Line 5,634: | Line 5,634: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46189 46189] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,645: | Line 5,645: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46192 46192] | ||
|} | |} | ||
problem: The | 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 === | ||
{| | {| | ||
Line 5,656: | Line 5,656: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46268 46268] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,667: | Line 5,667: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,678: | Line 5,678: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46281 46281] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,689: | Line 5,689: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46367 46367] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,700: | Line 5,700: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,711: | Line 5,711: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46448 46448] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,722: | Line 5,722: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46450 46450] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,733: | Line 5,733: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46452 46452] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,744: | Line 5,744: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46461 46461] | ||
|} | |} | ||
problem: | 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 | === IP-DECT OEM protocol DTMF through RTP === | ||
{| | {| | ||
Line 5,755: | Line 5,755: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46478 46478] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,766: | Line 5,766: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46483 46483] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,777: | Line 5,777: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46484 46484] | ||
|} | |} | ||
problem: | 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 === | === Counters display does not work with IE8 === | ||
Line 5,792: | Line 5,792: | ||
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 | 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 === | ||
{| | {| | ||
Line 5,799: | Line 5,799: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46511 46511] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,810: | Line 5,812: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46527 46527] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,821: | Line 5,823: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46532 46532] | ||
|} | |} | ||
problem: | 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 === | === inband info received after disconnect of a connected call was lost in handsfree/headset mode because of automatic release === | ||
Line 5,864: | Line 5,853: | ||
checked in to 8.00,7.00,08-70300 | 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 === | |||
{| | {| | ||
Line 5,871: | Line 5,871: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46624 46624] | ||
|} | |} | ||
problem: | 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 === | === Unsolicity NOTIFY(simple-message-summary) rejected with 481 === | ||
Line 5,898: | Line 5,898: | ||
=== | === phone must propagate error logs from call object to logging service === | ||
{| | {| | ||
Line 5,905: | Line 5,905: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46570 46570] | ||
|} | |} | ||
problem: the | 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 === | ||
{| | {| | ||
Line 5,916: | Line 5,918: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46662 46662] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,927: | Line 5,929: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46678 46678] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,938: | Line 5,940: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46690 46690] | ||
|} | |} | ||
problem: | 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) === | ||
{| | {| | ||
Line 5,949: | Line 5,951: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46716 46716] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,960: | Line 5,964: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46788 46788] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,971: | Line 5,977: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=46931 46931] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 5,982: | Line 5,988: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 5,993: | Line 5,999: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,004: | Line 6,010: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,015: | Line 6,021: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47104 47104] | ||
|} | |} | ||
problem: | 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 | === IP-DECT registration down reason text === | ||
{| | {| | ||
Line 6,026: | Line 6,032: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47121 47121] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,037: | Line 6,043: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47151 47151] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color="green"> | |<font><font color="green">Resolved</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47161 47161] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,059: | Line 6,067: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47210 47210] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,070: | Line 6,078: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47243 47243] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,081: | Line 6,089: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,092: | Line 6,100: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47254 47254] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,103: | Line 6,113: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47267 47267] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color="green"> | |<font><font color="green">Resolved</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47348 47348] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,125: | Line 6,135: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47372 47372] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,136: | Line 6,146: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47395 47395] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color="green"> | |<font><font color="green">Closed</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47403 47403] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color="green"> | |<font><font color="green">Closed</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47494 47494] | ||
|} | |} | ||
problem: | 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 | ||
=== prevent | === IP6000/2000 trap handler must be run on common stack to prevent false alarms in post mortem memory diagnostics === | ||
{| | {| | ||
Line 6,169: | Line 6,179: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47501 47501] | ||
|} | |} | ||
problem: | 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 | |||
=== SIP | === Trap on SIP call clearing === | ||
{| | {| | ||
Line 6,180: | Line 6,192: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47511 47511] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 6,191: | Line 6,203: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,204: | Line 6,214: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47513 47513] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,217: | Line 6,225: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47516 47516] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,230: | Line 6,236: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47519 47519] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,243: | Line 6,247: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,256: | Line 6,258: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47715 47715] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,269: | Line 6,269: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47772 47772] | ||
|} | |} | ||
problem: | 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 | === permit to control the display format of names from local/PBX directory the same way as for external directories === | ||
{| | {| | ||
Line 6,282: | Line 6,280: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47784 47784] | ||
|} | |} | ||
problem: | 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:'' | ''Status:'' | ||
7.00,08-70300 | |||
=== | === malloc must always run disabled === | ||
{| | {| | ||
Line 6,295: | Line 6,293: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47792 47792] | ||
|} | |} | ||
problem: | 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:'' | ''Status:'' | ||
7.00,08-70300 | checked in to 7.00,08-70300 | ||
=== | === prevent creation of pbx dtmf object with char '#' in long name === | ||
{| | {| | ||
Line 6,308: | Line 6,306: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,319: | Line 6,317: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,330: | Line 6,330: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,341: | Line 6,341: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,352: | Line 6,352: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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: | === SIP: Handling of transfer to different ip address === | ||
{| | {| | ||
Line 6,363: | Line 6,363: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=47917 47917] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 6,374: | Line 6,374: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === SIP: Problem with media negotiation after 488 === | ||
Line 6,401: | Line 6,401: | ||
=== | === SIP: Media negotiation problem at Alcatel Omni PCX === | ||
{| | {| | ||
Line 6,408: | Line 6,408: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,419: | Line 6,419: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,430: | Line 6,430: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id=48579 48579] | |[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 | 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 | ||
Line 6,478: | Line 6,511: | ||
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 | 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 === | ||
{| | {| | ||
Line 6,485: | Line 6,518: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=48702 48702] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,496: | Line 6,529: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,507: | Line 6,540: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=48719 48719] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,518: | Line 6,551: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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: | 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 === | ||
{| | {| | ||
Line 6,529: | Line 6,575: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,540: | Line 6,586: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=48834 48834] | ||
|} | |} | ||
problem: If a | 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 === | ||
{| | {| | ||
Line 6,551: | Line 6,597: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=48839 48839] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,562: | Line 6,608: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,573: | Line 6,619: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=48939 48939] | ||
|} | |} | ||
problem: | 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 === | === IP2000/IP6000 must permit more than 8000 users === | ||
Line 6,592: | Line 6,636: | ||
checked in to 7.00,08-70300 | checked in to 7.00,08-70300 | ||
=== | === PBX: Reference to Config Template lost, when opening User from Registrations page === | ||
{| | {| | ||
Line 6,599: | Line 6,643: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49090 49090] | ||
|} | |} | ||
problem: | 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 | ||
=== | == Bug Fixes == | ||
= V7 Hotfix14 (10-70300.25) = | |||
Changes included in Version 7 hotfix14 | |||
[http://mantis.innovaphone.com/view.php?id=49142 Definition] | |||
== New Features == | |||
=== Need to configure 'Route Root-Node External Calls to' in case of 'License Only' on Slave === | |||
{| | {| | ||
Line 6,610: | Line 6,666: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,621: | Line 6,677: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,632: | Line 6,688: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,643: | Line 6,699: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,666: | Line 6,710: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49281 49281] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 6,677: | Line 6,721: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,688: | Line 6,732: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49459 49459] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,699: | Line 6,743: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49797 49797] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,710: | Line 6,756: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49799 49799] | ||
|} | |} | ||
problem: | 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 | |Status | ||
|<font><font color=" | |<font><font color="red">Assigned</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=49880 49880] | ||
|} | |} | ||
problem: | 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 === | === One-way-voice after unpark/pickup together with SRTP, H323 and Registration with password === | ||
Line 6,758: | Line 6,804: | ||
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 | 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 === | ||
{| | {| | ||
Line 6,765: | Line 6,811: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,776: | Line 6,822: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 | |Status | ||
|<font><font color=" | |<font><font color="green">Closed</font></font> | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,798: | Line 6,844: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,811: | Line 6,855: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,824: | Line 6,866: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,835: | Line 6,879: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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. | |||
== Bug Fixes == | |||
= V7 Hotfix15 = | |||
Changes included in Version 7 hotfix15 | |||
[http://mantis.innovaphone.com/view.php?id=50629 Definition] | |||
== New Features == | |||
=== | === INCA phones - monitoring a headset conversation via handset (headset-spy) did not work === | ||
{| | {| | ||
Line 6,846: | Line 6,902: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,857: | Line 6,915: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,868: | Line 6,928: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,879: | Line 6,939: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51304 51304] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 6,902: | Line 6,950: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51346 51346] | ||
|} | |} | ||
Problem: | 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 === | ||
{| | {| | ||
Line 6,913: | Line 6,961: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51352 51352] | ||
|} | |} | ||
Problem: | 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) === | === PBX-CDR: Local Time wrong (same as UTC) === | ||
Line 6,928: | Line 6,976: | ||
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 | 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 === | ||
{| | {| | ||
Line 6,935: | Line 6,983: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51417 51417] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 6,946: | Line 6,994: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51432 51432] | ||
|} | |} | ||
problem: If | 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 === | ||
{| | {| | ||
Line 6,957: | Line 7,005: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 6,968: | Line 7,016: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51584 51584] | ||
|} | |} | ||
problem: | 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' === | ||
{| | {| | ||
Line 6,979: | Line 7,027: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51619 51619] | ||
|} | |} | ||
problem: | 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 === | === One way media after SRTP renegotiation on IP6000 === | ||
Line 7,016: | Line 7,053: | ||
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/> | 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 === | ||
{| | {| | ||
Line 7,023: | Line 7,060: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 7,034: | Line 7,071: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51772 51772] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 7,045: | Line 7,082: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=51965 51965] | ||
|} | |} | ||
problem: | 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 === | ||
{| | {| | ||
Line 7,056: | Line 7,093: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?id= | |[http://mantis.innovaphone.com/view.php?id=52038 52038] | ||
|} | |} | ||
problem: the | 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 === | ||
{| | {| | ||
Line 7,069: | Line 7,104: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | ||
{| | {| | ||
Line 7,082: | Line 7,115: | ||
|- | |- | ||
|Id | |Id | ||
|[http://mantis.innovaphone.com/view.php?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 === | === SIP: SRTP key changes right after connect === |
Revision as of 09:19, 2 June 2010
This is the Version 7 firmware roadmap.
This article is generated automatically. Do not edit! Please see 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
- Security: TLS, SIPS, SRTP, ...
- Bootcode with full IP/HTTP functionality to better recover from a failed firmware update
Definition
New Features
CDR from PBX
Status | Closed |
Id | 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.
See http://wiki.innovaphone.com/index.php?title=Reference:Call_Detail_Record_CDR_PBX for description
MultiLevel Admin Access
Status | Closed |
Id | 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).
On the PBX configured PBX users can be given Administrator rights:
- PBX Full Admin.
- PBX Admin all-objects (no General/Password/Filter)
- PBX Admin non-critial objects. Only objects without critical flag
- Call-Forward/Groups only
In Addition the admin can be restricted to a Node
SRTP - together with SIP and H.323
Status | Closed |
Id | 4280 |
works with secure signaling for key exchange
Handling of certificates
Status | Closed |
Id | 14920 |
ASN.1 definition, etc.
Needed for TLS
802.1x Port Authentication
Status | Closed |
Id | 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 | Closed |
Id | 14934 |
- Bootcode with Decompression/Start of Firmware only
- mini Firmware with IP/HTTP only
- both packed into one image that is called bootcode
- bootboot code enhanced to allow reading firmware from not continous flash segments
- the bootboot code usually starts the normal firmware. If this fails the mini firmware, which is part of the bootcode image is started
- on platforms with HW support for alternate bootcode, the bootboot code is stored twice
- a bootcode update is only possible if the real firmware was booted
- a real firmware update is possible only if the mini firmware inside the bootcode is ok
- Bootcode with Decompression/Start of Firmware ( realbootcode ) is stored exclusiv in the first flash segment and is only updated if changed.
LDAP/HTTP Directory Access from DECT Handset
Status | Closed |
Id | 15436 |
A pbx object can be configured to gain access to a ldap directory (or to a http server).
There are two different objects, one for quick dial and one for directory search.
* quick dial (mst): the real number of the target can be found by dialing a short number after dialing the quick dial pbx object.
* 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...).
The results can be searched through by 1 and * and the current result can be called by #.
If possible, the last dialed number can be redialed.
SIPS (SIP over TCP/TLS)
Status | Closed |
Id | 22336 |
needed for secure exchange of SRTP keys.
needed for OCS interoperability
PBX Slaves can use licenses from Master (floating license)
Status | Closed |
Id | 26945 |
Basic+registrations licenses are installed on master only. Slaves use these licenses.
Status:
implemented in v7.
See
http://wiki.innovaphone.com/index.php?title=Reference:Administration/PBX/General
and
http://wiki.innovaphone.com/index.php?title=Reference:Licenses
for description
innovaphone Messaging
Status | Closed |
Id | 26946 |
innovaphone V7 Messaging
- based on SIP Messaging RFC 3428 (Session Initiation Protocol (SIP) Extension for Instant Messaging)
- Interoperability with H.323 protocol
- Alerting or inbound-intruding tone upon message receival
- Missed messages counter
- Incoming and outgoing messages displayed in the same list as incoming and outgoing calls (well known R and Redial keys as shortcuts)
- Separate message lists also available
- On busy subscriber, send message shortcut in context menu
- Out of office do-not-disturb mode with out-of-office message being sent to each caller
- special "Messaging Server Interface" mode developed to support Avics messaging syntax (special message content activates Avics mode)
Active Directory Replication
Status | Closed |
Id | 29001 |
Active Directory Replication
Wiki Documents:
Configuration: http://wiki.innovaphone.com/index.php?title=Reference7:Configure_Active_Directory_Replication
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 | Closed |
Id | 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 | Closed |
Id | 29010 |
This allows to archive a firmware or bootcode version from the device.
Support for Multilocation TAPI in PBX-SOAP-API
Status | Closed |
Id | 31655 |
- Find other Location URLs
- ...
pbx dtmf feature codes object
Status | Closed |
Id | 31663 |
A new pbx object with dtmf feature codes:
CFU/CFB/CFNR De-/Activate
Pickup Group/Directed
Park/Unpark
Park To/Unpark from
Call Completion/Cancel CC
Each feature code can be freely configured or disabled.
Other new Features
31624 | dde | redial for directory search |
25470 | dde | caching of dir_entries for better file driver performance |
14918 | gd | H.235 key exchange for SRTP |
19034 | gd | busy on 1 call is not ideal for operating fixed+wireless phone on one user |
21420 | gd | SOAP API: Send DTMF |
18708 | gd | Feature Code support for CLIR |
23985 | gd | should be possible to turn off DTMF detection |
19967 | jfr | Use MWI to indicate a pending CCNR |
23977 | mst | SNMP Trap for Alarms under Administration/Diagnostics/Alarms |
31583 | tac | Do CPU reservation for SRTP |
28981 | teh | Extend pbx dtmf object about joining group |
26931 | gd | Framework to edit Phone config on PBX |
31287 | vsi | Phone Text Translations for Security Release - Italian |
31289 | vsi | Phone Text Translations for Security Release - Dutch |
31577 | vsi | phone-ui: functaste activate-reg (toggle flag) |
14924 | cb | HTTPS in httpclient |
14913 | cb | Driver for Hardware AES for SRTP |
14915 | cb | IP6000 Driver for Hardware DES |
28071 | ckl | force media-relay |
14893 | gd | SIP fault detection |
26988 | cb | Fax with 14.4 |
3753 | ckl | timed disconnect für PPoE |
7208 | ckl | twin calls |
11376 | ckl | help url config: drop down "standard / local / specific" |
10821 | cmu | Signalisierung für Türsprechstellen am a/b Interface abschaltbar machen |
8217 | gbe | Rufannahme per IXI bei Telefon mit Headset ohne Tastendruck am Telefon |
14914 | msc | Software DES |
26369 | mst | vm,xml, <pbx-xfer> required |
14917 | tac | SIP key exchange for SRTP |
31252 | vsi | Phone Text Translations for Security Release |
31286 | vsi | Phone Text Translations for Security Release - Scandic Languages |
31288 | vsi | Phone Text Translations for Security Release - French |
9390 | cb | httpclient NTLM Authentication |
14907 | gd | Router error reporting |
14908 | gd | Router fault state reporting |
25592 | gd | DHCP Server: Client Reconfigure Prozedur |
5984 | jfr | MS-CHAP V2 support in PPP |
14899 | gd | IP-DECT fault state reporting |
14900 | gd | IP-DECT error reporting |
Bug Fixes
Other Bug Fixes
34654 | mst | HTTPS neither works with Webmedia nor WebDAV |
27480 | vsi | IP72: icons in the upper line |
30890 | vsi | Messaging Tests |
15101 | vsi | IP72: battery state |
30891 | vsi | lock (schloss) in phone-ui on SRTP |
27219 | vsi | IP72: bootcode - clear config with a key press combination...... |
15100 | vsi | IP72: charger mode |
35499 | dde | dect fty clir next call does not work |
29300 | 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 Definition
New Features
IP72: new display driver for LCD NT75451
Status | Closed |
Id | 33028 |
Problem: newer phones require another lcd driver
Solution: fixed in code
Products affected: IP72
Risk: None
Trap During TLS Connection Termination
Status | Closed |
Id | 35603 |
Problem: Occasional trap while TLS client connection shuts down.
Solution: Fixing state machine
Products affected: All
Risk: none
CFU to Voicemail/Redial
Status | Closed |
Id | 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
Dect SIP registration to PBX with authentication name
Status | Closed |
Id | 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.
SOAP LocationUrl return value coding
Status | Closed |
Id | 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.
SIP debug output to be removed
Status | Closed |
Id | 35739 |
Problem: Debug outputs forgotten in SIP stack
Solution: Debug outputs removed
Products affected: All
Risk: None
"Administration/Diagnostics/Events/Save" should be enabled in viewer mode
Status | Closed |
Id | 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
Fix for Session-Expires handling
Status | Closed |
Id | 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
Status:
Fix: Session watchdog timer is restarted with original expires value.
Debugging Info for MAX_BUSY_TICKS improved
Status | Closed |
Id | 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
Display Master Id in users list
Status | Closed |
Id | 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
Potential Trap if H.323 Signaling entity deleted when calls active
Status | Closed |
Id | 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
Refresh rate of call list gui pages
Status | Closed |
Id | 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.
Short local tone
Status | Closed |
Id | 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.
Load balancing for trunks
Status | Closed |
Id | 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.
Idle display updates if masters are down
Status | Closed |
Id | 35770 |
Problem: No idle display update if the connection to masters fails.
Solution: Idle display update added.
Products affected: IP1201, IP4001.
Risk: Minimal.
Forwarded Name Id sometimes corrupted
Status | Closed |
Id | 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
IP22 running out of sync
Status | Closed |
Id | 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
switching between primary and secondary DNS on request timeout fails sometimes in NAT
Status | Closed |
Id | 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
Memory leak in Dect
Status | Closed |
Id | 35819 |
Problem: Memory leak in Dect.
Solution: Call clean up function.
Products affected: IP1200.
Risk: Minimal.
Undeleted calls from anonymous handsets.
Status | Closed |
Id | 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.
Undeleted call facility object
Status | Closed |
Id | 35821 |
Problem: Call facility object isn't deleted if user is unregistered to PBX.
Solution: Deleting corrected.
Products affected: All Dect devices.
Risk: Minimal.
fix for ringback after taking incoming call completion response/ renaming call completion to call completion busy
Status | Closed |
Id | 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
IP-DECT Sporadic Hanging Radio Calls
Status | Closed |
Id | 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.
No Media doing call from IP-DECT to slowstart destination which answers with CONN and Suppl. Services are enabled
Status | Closed |
Id | 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
provide OEM specific DHCP Vendor Class Identifier
Status | Closed |
Id | 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
Unusual memory leaks after closed calls
Status | Closed |
Id | 35839 |
Problem: Unusual memory leaks after closed calls.
Solution: Call clean-up function for unused events.
Products affected: All devices.
Risk: Minimal.
join/leave pbx dtmf feature should show all dynamic groups, independent of their current state
Status | Closed |
Id | 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 \taffirmation tone.
products affected: all pbx devices
risk: minimal
New cause code mapping specification
Status | Closed |
Id | 35858 |
Problem: New cause code mapping specification.
Solution: Cause code mapping changed.
Products affected: IP1201, IP4001.
Risk: Minimal.
SIP specific call transfer handling as required by SIP provider ShoreTel
Status | Closed |
Id | 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
RTP jitterbuffer did not work well for RTP out of sequence
Status | Closed |
Id | 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.
Prevent random INCA leak reports in test
Status | Closed |
Id | 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
Logging of calls in PBX cannot be turned off
Status | Closed |
Id | 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.
H.323 non-efc: User RoundTripDelayRequest as keep-alive
Status | Closed |
Id | 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)
missing details in event log "no route to destination"
Status | Closed |
Id | 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
Wrong display information on phone, if a call is forwarded to Waiting
Status | Closed |
Id | 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.
croatian translation corrections
Status | Closed |
Id | 35935 |
Problem: parts of croatian translation needed corrections
Solution: corrected
Products affected: All phones
Risk: None
Sending NOTIFY(sipfrag) with error code reflecting error on transfer call
Status | Closed |
Id | 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
Trap if no PBX line in OEM specific state
Status | Closed |
Id | 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.
IP72: default backlight off
Status | Closed |
Id | 35948 |
Problem: with factory defaults, backlight level set to 0 (disabled)
Solution: fixed code to activate backlight (level 9)
Products affected: IP72
Risk: None
IP72: fix default contrast settings for phones with hw-id F2
Status | Closed |
Id | 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
Waiting-Queue: No Disconnect-Tone to Caller if external Transfer Call failed
Status | Closed |
Id | 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
Phone Registration 1 SIP Interop Tweaks - checkmarks cannot be cleared
Status | Closed |
Id | 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
Need to Support STATUS_INQ/STATUS procedure in H.323 for OEM
Status | Closed |
Id | 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
Need to set H.323 terminal_type for OEM
Status | Closed |
Id | 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
Hold state indication not cleared on a call transfer requested via direct signalling
Status | Closed |
Id | 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
Status:
Test with GnuGk provided by TAC in phone/transfer OK
Pickup from executive not possible, if the call was transfered to executive
Status | Closed |
Id | 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
Make H.245 keepalive with RoundTripDelay messages configurable
Status | Closed |
Id | 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
Firmware stall with MAX_BUSY_TICKS and Watchdog
Status | Closed |
Id | 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
H.323 reuse TCP did not work for call-independetnt messages
Status | Closed |
Id | 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
OEM specific trunk busy handling
Status | Closed |
Id | 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.
OEM specific pre-dial support
Status | Closed |
Id | 36105 |
Problem: New OEM specific pre-dial support.
Solution: Pre-dial support for OEM added.
Files: dectmaster.cpp
Products affected: IP1201, IP4001.
Risk: Minimal.
OEM specific location handling during handover
Status | Closed |
Id | 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.
OEM specific trunk redundancy feature
Status | Closed |
Id | 36111 |
Problem: OEM specific trunk redundancy feature.
Solution: Feature implemented.
Files: dectmaster.h, dectmaster.cpp, dectmaster.xsl (oem).
Products affected: IP1201, IP4001.
Risk: Minimal.
OEM specific change of PBX registration configuration for coder selection
Status | Closed |
Id | 36115 |
Problem: Coder is rejected (OEM specific).
Solution: Registration configuration changed.
Files: dectmaster.cpp.
Products affected: IP1201, IP4001.
Risk: Minimal.
Changed keep alive configuration for oem interoperability
Status | Closed |
Id | 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.
OEM specific call status support
Status | Closed |
Id | 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.
Prevent high Dect-Master CPU load
Status | Closed |
Id | 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.
DSP channel of transfer initiating call lost when call is released by the party requesting the transfer
Status | Closed |
Id | 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
OEM specific unused feature codes
Status | Closed |
Id | 36123 |
Problem: Unused feature codes.
Solution: Unused feature codes disabled.
Files: dectfty.xsl (oem), config.h (oem).
Products affected: IP1201, IP4001.
Risk: Minimal.
automagic URL filename expansion in update 'bmc' command wrong
Status | Closed |
Id | 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
Dect MWI message center number configurable to user number
Status | Closed |
Id | 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.
MWI not updated at PP power up
Status | Closed |
Id | 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.
OEM specific Dect ras connection up event
Status | Closed |
Id | 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.
OEM specific location state for disconnected radio connections
Status | Closed |
Id | 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.
OEM specific trunk configuration option
Status | Closed |
Id | 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.
Not possible to disable option "Allow DTMF through RTP"
Status | Closed |
Id | 36196 |
Problem: Not possible to disable option "Allow DTMF through RTP".
Solution: Fixed.
Files: dectmaster.cpp, dectmaster.xsl (oem).
Products affected: IP1200.
Risk: Minimal.
IP800: Lost trace after trap to minifirmware and load to DRAM
Status | Closed |
Id | 36197 |
Problem: Stack was initialized
Solution: Stack init removed
Files: ip800.cpp
Products affected: IP800
Message Waiting Indications from a PBX Message Waiting Object are not visible in a special workíng environment
Status | Closed |
Id | 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
An incoming transfer on a call which was initiator of a rejected transfer before did not work (direct signalling)
Status | Closed |
Id | 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
Frequency band support for Brazil (Subset of South America)
Status | Closed |
Id | 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.
Unclosed announcement calls in conference
Status | Closed |
Id | 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.
XPARENT coder in selection list, but cannot be selected
Status | Closed |
Id | 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
Restart because of Trap in PBX together with transfer/pickup/call-intrusion and Waiting, Voicemail, MWI
Status | Closed |
Id | 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
mapping of "600 Busy Everywhere" to cause #17 (User Busy)
Status | Closed |
Id | 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
Factory reset with V7 bootcode clears linear firmware
Status | Closed |
Id | 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
Support for IP111
Status | Closed |
Id | 36255 |
problem: lcd/forms support for upcoming phone model IP111
solution: changed code
files: lcd_ip111.cpp
products: all phone-inca phones
risks: none
No DISC signaling with INFO(application/qsig) if not supported by remote side
Status | Closed |
Id | 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
URI parameter "epid" in AOR
Status | Closed |
Id | 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
Avoid endless authentication re-trying
Status | Closed |
Id | 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
V7 Bootcode shows always 999 after firmware downgrade to V6
Status | Closed |
Id | 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
Memory leak when executing call-completion on IP-DECT
Status | Closed |
Id | 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
OEM specific disabling of the feature to change admin login
Status | Closed |
Id | 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
Fix for internal test module for Dect
Status | Closed |
Id | 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.
OEM specific GUI view
Status | Closed |
Id | 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.
IP150 - Right hand part of OEM specific WEB interface is not displayed
Status | Closed |
Id | 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
Trap because of buffer overrun when logging a login reject
Status | Closed |
Id | 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
SIPS missing in phone UI in protocol list
Status | Closed |
Id | 36346 |
problem: SIPS missing in phone UI in protocol list
solution: fixed in code
files:
products: phone_inca, ip72
risks: none
Trap if too many licenses installed and slave obtains license from master
Status | Closed |
Id | 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
Fix for trap in HTTP client
Status | Closed |
Id | 36357 |
problem: trap in HTTP client (deleted packet to user)
solution: fixed in code
files: httpclient_i.cpp
products: all products
risks: no risk
mwi function key configuration in the phone-ui was not complete
Status | Closed |
Id | 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
Clear all sockets if registration changes
Status | Closed |
Id | 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
OEM specific registration handling if a trunk goes down
Status | Closed |
Id | 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.
IP72: use production settings variable to det default contrast
Status | Closed |
Id | 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
PBX routing fails, because access to deleted buffer
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix 2 (09-70300.08)
Changes included in Version 7 Hotfix2 Definition
New Features
OEM specific registration handling if a trunk goes up
Status | Closed |
Id | 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.
R-key usage after handover in alerting state
Status | Closed |
Id | 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.
OEM specific infinite loop because of invalid pointer
Status | Closed |
Id | 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.
SIP allocation limit is too low at 500kB
Status | Closed |
Id | 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
PBX: Call Completion sometimes indicated call-back possible, even if called user still busy
Status | Closed |
Id | 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
SOAP/TAPI did not show connected for monitored operator of Waiting Queue
Status | Closed |
Id | 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.
SIP:TRANSIT calls are terminated if unknown coder has been negotiated
Status | Closed |
Id | 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
IP header of IGMP reports contains invalid Option field
Status | Closed |
Id | 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
Trap when changing H.323 tracing while H.323 calls are up
Status | Closed |
Id | 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
Bad URI parameter "epid=(NULL)" in INVITE
Status | Closed |
Id | 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
Obtain license from master did not work on standby PBX
Status | Closed |
Id | 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
ISDN: Use REL for call rejection instead of DISC as an interop option
Status | Closed |
Id | 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
SIP/TCP Response not always been sent through connection of incoming request
Status | Closed |
Id | 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
PBX Routing to a object without Node/PBX not possible from Slave to Master
Status | Closed |
Id | 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
Wrong or duplicate MWI interrogation
Status | Closed |
Id | 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.
Media negotiation problem at OCS
Status | Closed |
Id | 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
IP4001 minifirmware sometimes doesnt start
Status | Closed |
Id | 36658 |
problem: unused IRQ are not disabled
solution: disable unused IRQs
files: ip4001.cpp
products: ip4001
risks: none
PBX-SOAP UserRedirect call routing did not work for Users not in root-node together with escapes
Status | Closed |
Id | 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
Soft conversion via 'drive/CX0' also started after read-operation
Status | Closed |
Id | 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
syslog not available in viewer mode
Status | Closed |
Id | 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
alerting calls cannot be picked from trunk object when a connected call is parked at the trunk user
Status | Closed |
Id | 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
Status:
Hallo Guntram,
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?
:-) joachim
no ringing voltage
Status | Closed |
Id | 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
clip retry
Status | Closed |
Id | 36702 |
problem: clip reception not assured
solution: sent more than once
files: ab_sig.cpp si3241.cpp
products: ip28
risks: very low
sprintf from standard library pulled by ip6000 ethernet lib
Status | Closed |
Id | 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
after bootcode update and softreset the box enters TFTP mode
Status | Closed |
Id | 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
park function key extensions to provide line key functionality
Status | Closed |
Id | 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
Trap on special call disconnect collisions for ISDN-ISDN calls
Status | Closed |
Id | 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
UART modem IRQ not serviced
Status | Closed |
Id | 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
UART not part of IP4001 project
Status | Closed |
Id | 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
IP4001 production test interface start procedure is unreliable
Status | Closed |
Id | 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
forward calling name identification on waiting queue during DTMF dialing
Status | Closed |
Id | 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
PBX error log for external call transfer attempt, which is not allowed
Status | Closed |
Id | 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
H.323 compatibility issue with h245-after-conn
Status | Closed |
Id | 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
TLS client authentication for interoperability with OCS
Status | Closed |
Id | 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
Authentication name for SIP registration in DECT devices
Status | Closed |
Id | 36836 |
Problem: Wrong copied user authentication name string for SIP registration.
Solution: Fixed.
Files: dectusers.cpp.
Products affected: All DECT devices.
Risk: Minimal.
pbx dtmf object can cause traps with disabled feature codes
Status | Closed |
Id | 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
Userpart of SIP-URIs not unescaped when parameter "user=phone" present
Status | Closed |
Id | 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
Password complexity
Status | Closed |
Id | 36853 |
Problem: Password complexity function doesn't recognize special characters.
Solution: Fixed.
Files: password.cpp, latin1.h.
Products affected: All devices.
Risk: Minimal.
Dect frequency and other bases GUI page
Status | Closed |
Id | 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.
OEM specific dynamic ras connections
Status | Closed |
Id | 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.
OEM specific ethernet connection failure handling improved
Status | Closed |
Id | 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.
Dect GUI user list
Status | Closed |
Id | 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.
Status | Closed |
Id | 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
Status | Closed |
Id | 36977 |
problem: interface T1 options not hidden in E1 mode
solution: update xsl file
files: falc56_drv.xsl
products: ip6000
risks: low
fix for ALARM flooding in SIP
Status | Closed |
Id | 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
OEM specific trunk location registration
Status | Closed |
Id | 36990 |
Problem: No location registration should be sent during call or handover.
Solution: Implementation changed.
Files: dectmaster.cpp.
Products affected: IP4001, IP1201.
Risk: Minimal.
hanging calls when SOAP call transfer fails when using SIP operator phone
Status | Closed |
Id | 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
Dect GUI error message because of duplicate long name
Status | Closed |
Id | 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.
OEM specific cause code mapping
Status | Closed |
Id | 37051 |
Problem: OEM specific cause code mapping specification has been changed.
Solution: Mapping changed.
Files: dectmaster.cpp.
Products affected: IP4001, IP1201.
Risk: Minimal.
PSTN->Quickdial-Object->PSTN Calls May Fail
Status | Closed |
Id | 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
On GW interfaces w/o registration the config options "Domain" and "Proxy" did not work properly
Status | Closed |
Id | 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
Trap because of NULL pointer access sometimes if outgoing call via Trunk Object fails
Status | Closed |
Id | 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
Potential trap on outbound ENUM SIP calls
Status | Closed |
Id | 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.
PBX: Routing to objects which conflict with escapes did not work anymore (did work in v6)
Status | Closed |
Id | 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
hide option in v7 hides more than in v6, user and phone settings as well
Status | Closed |
Id | 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
evaluation of #b<num> in the url parameter of "mod cmd UP0 scfg" overrides the character following <num>
Status | Closed |
Id | 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
PBX: CFNR on 'Gateway' Objects executed if remote party did not answer
Status | Closed |
Id | 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
H.450 returnError for callTransferInitiate not implemented
Status | Closed |
Id | 37178 |
Problem: H.450 returnError for callTransferInitiate not implemented
Solution: implemented
Files: h450.cpp
Products affected: All devices
Risk: Minimal
OEM specific radio unregistration handling
Status | Closed |
Id | 37220 |
Problem: Infinite loop during OEM specific radio unregistration handling.
Solution: Implementation changed.
Files: dectmaster.cpp.
Products affected: IP4001, IP1201.
Risk: Minimal.
Standby master reports missed radios delayed
Status | Closed |
Id | 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.
Calls from registered devices were rejected
Status | Closed |
Id | 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
SIP calls were rejected with 403 in case the Request-URI did not match the registered Contact-URI
Status | Closed |
Id | 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
Added SIP interop tweak "Enforce Sending Complete"
Status | Closed |
Id | 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
OEM specific: sending signaling info messages not until gk connect message
Status | Closed |
Id | 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.
Problems registering at some SIP servers with parameter "user=phone" in Contact-URI in REGISTER request
Status | Closed |
Id | 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
OEM specific endpoint deleting
Status | Closed |
Id | 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.
Unintended monitoring of calling party when automatic dialling is used
Status | Closed |
Id | 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
Status:
checked in to 7.00, 08-70300, 8.00
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")
Hidden config option /remote-domain-in-from
Status | Closed |
Id | 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
Switching back from MOH did not work sometimes
Status | Closed |
Id | 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
Standby Mobility Master client registration status wrong
Status | Closed |
Id | 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.
Workaround for OEM H.323 bug (OLC before MSD)
Status | Closed |
Id | 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
Name Identification in Diverting Info
Status | Closed |
Id | 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
H.323: Duplicate TerminalCapabilitySetAck message sent sometimes
Status | Closed |
Id | 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
Diverting Info not forwarded by Gateway
Status | Closed |
Id | 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
PBX: CFNR at user should have precedence over "No Answer" Destination at Trunk
Status | Closed |
Id | 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
One way media when doing multiple transfer together with Media-Relay
Status | Closed |
Id | 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
OEM specific available coders
Status | Closed |
Id | 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.
OEM specific call release
Status | Closed |
Id | 37687 |
Problem: Call is not disconnected in OEM specific case.
Solution: Release event handling fixed.
Files: dtmffty.cpp.
Products affected: IP4001, IP1201.
Risk: Minimal.
OEM specific Suppl. Service MWI
Status | Closed |
Id | 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.
OEM specific sig media info messages filter
Status | Closed |
Id | 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.
Int/Ext added to CF Filter config to allow config of call-forward for internal/external calls only
Status | Closed |
Id | 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
Media Negotiation Problem on SIP-H.323 calls with hold/retrieve
Status | Closed |
Id | 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
Some OEM equipment only accepts one tunneled H.245 message per H.225 frame
Status | Closed |
Id | 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
Problems using SIP for box internal signaling
Status | Closed |
Id | 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
Missing name identification on waiting queue during DTMF dialing
Status | Closed |
Id | 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
OEM specific MSD handling when doing media renegotiation
Status | Closed |
Id | 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
OEM H.323 requirement to send saved INFO after receiving CONN
Status | Closed |
Id | 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
keep original call when replacement calls fails (unsuccessful blind transfer)
Status | Closed |
Id | 37796 |
problem: When blind transfer failed the original call was terminated.
solution: Keep original call
files: phonesig.cpp
products: All phone devices
risks: no
PBX Dtmf object: no de/activation of cfnr feature possible
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix 3 (09-70300.11)
Changes included in Version 7 Hotfix3 Definition
New Features
A PBX Standby Slave using master licenses should use licenses obtained from PBX it is backing up
Status | Closed |
Id | 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
License types with exactly 32 characters, created strange characters on PBX Info page
Status | Closed |
Id | 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
Exclusive Coder G729A should also match for incoming coder G729
Status | Closed |
Id | 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
Some PBX User attribts could not be modified with SOAP Admin function
Status | Closed |
Id | 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
OEM expects response to H.323 MSD even after MSD procedure is complete
Status | Closed |
Id | 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
CCNR/CCBS callback indication gets lost when requesting phone is busy
Status | Closed |
Id | 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
Status:
checked in to 7.00, 08-70300, 8.00
OEM specific PBX options
Status | Closed |
Id | 37848 |
Problem: Changed specifications for OEM PBX (reuse TCP, round trip delay).
Solution: Options changed.
Files: dectmaster.cpp.
Products affected: IP4001, IP1201.
Risk: Minimal.
Changing PBX/General options can remove automatically generated licenses
Status | Closed |
Id | 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
Configured SIP proxy in GK-IF overview not visible
Status | Closed |
Id | 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
Fix: TLS socket shutdown flow with Internet Explorer
Status | Closed |
Id | 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
OEM specific alarm report for Standby Master registrations
Status | Closed |
Id | 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.
OEM specific GUI for Standby Master
Status | Closed |
Id | 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.
Wait for ACK before starting next re-negotiation
Status | Closed |
Id | 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
Multilevel Slaves did not work
Status | Closed |
Id | 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
Status | Closed |
Id | 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
IP1200 Trap with MWI event (MSF)
Status | Closed |
Id | 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.
DECT PBX messaging
Status | Closed |
Id | 37904 |
Problem: Unable to enable Dect messaging to/from PBX.
Solution: Fixed.
Files: dectmaster_if.h.
Products affected: IP1200.
Risk: Low.
CallIdentifier missing in some H.323 Facility messages
Status | Closed |
Id | 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
Interop tweak for MS Exchange server: "no-diverting-name"
Status | Closed |
Id | 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
Local Coder selection does not work after media re-negotiation
Status | Closed |
Id | 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
Multiple media descriptions were send in SDP answer in some rare cases
Status | Closed |
Id | 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
Wrong local ip addres in SDP offer in re-INVITE
Status | Closed |
Id | 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
DECT Master Trap during MWI update for logged-out handsets
Status | Closed |
Id | 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.
Bug Fixes
V7 hotfix 4 (09-70300.13)
Changes included in Version 7 hotfix4 Definition
New Features
IP72: WLAN page breaks after hitting the OK button below
Status | Closed |
Id | 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
Indeterminate pickup behaviour when multiple registrations receive group indications for the same call
Status | Closed |
Id | 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
Status:
checked in to 7.00, 8.00
Do not send RSeq in provosional response, if 100rel not supported by remote side
Status | Closed |
Id | 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
Send 180/Ringing with Alert-Info instead of 182/Queued on Call-Waiting condition
Status | Closed |
Id | 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)
Call waiting indication from dect handset not transmitted to SIP PBX
Status | Closed |
Id | 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
Memory leak if multiple registrations of MOH device to PBX
Status | Closed |
Id | 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
No-Way speech if call-transfer done by H.323 slowstart endpoint on a call routed thru multiple PBXs
Status | Closed |
Id | 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
Trap while processing SUBSCRIBE(reg)
Status | Closed |
Id | 37998 |
Problem: Trap while processing SUBSCRIBE(reg).
Solution: Fixed
Files: sip.cpp
Products affected: All PBX devices
Risk: No risk
no ringing voltage after few days uptime
Status | Closed |
Id | 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.
DTMF during Early Media (after "183 Session Progress")
Status | Closed |
Id | 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
coding of H.323 EFC wrong
Status | Closed |
Id | 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
PBX: Minimum of No Answer Timeout reduced from 4s to 2s
Status | Closed |
Id | 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
H.323 RAS Registration failover to another address which changes local address sometimes fails
Status | Closed |
Id | 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
mod cmd UP0 scfg ... /force <hours> does not work
Status | Closed |
Id | 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
Status:
checked in to 7.00, 8.00
MOH with random=true did not work on local resources
Status | Closed |
Id | 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)
IP240: directory search for a name starting with a special character other than 1st special character impossible
Status | Closed |
Id | 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
Trap when disconnecting while blind transfer pending
Status | Closed |
Id | 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
IP150 Manufacturing: Allow to set default language
Status | Closed |
Id | 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
OEM specific event handling for info messages
Status | Closed |
Id | 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.
Lost 200/OK for REGISTER caused switch-over to secondary/backup SIP proxy
Status | Closed |
Id | 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
Inbound calls on ENUM/SIP interfaces were rejected
Status | Closed |
Id | 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
out of memory trap when firmware upload fails (for example because of a flash problem)
Status | Closed |
Id | 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
Status:
fixed in 8.00, 7.00
IP-DECT or anlog interfaces with DTMF feature codes enabled cannot handle call-completion MWIs
Status | Closed |
Id | 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
Logging of Administration did show passwords
Status | Closed |
Id | 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
IP24, IP302, ... trap if diverted call to analog interface is received
Status | Closed |
Id | 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
call-forward was executed on pickup calls
Status | Closed |
Id | 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
Gateway: ',' not possible in registration name
Status | Closed |
Id | 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
PBX Waiting: DTMF destination using '.' to match any digit combined with destination name did not work
Status | Closed |
Id | 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
H.323 discovery or registration with password does not work thru ETH1 on the PBX
Status | Closed |
Id | 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
Loosing registration when SIP server changes its ip address
Status | Closed |
Id | 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
Web GUI shall use a relative reference ("//...") instead of an absolute URI ("http://...) for a link to an extenal box
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00
EDSS1 divertingLegInformation2 not decoded
Status | Closed |
Id | 38267 |
Description: Interworking for EDSS1 divertingLegInformation2
Solution: decode supplementary service facility divertingLegInformation2
Products affected: all gateways
Files: g950.cpp
Risk: none
Status:
v8,v7,v6
OEM specific trunk down handling
Status | Closed |
Id | 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.
OEM specific GUI trunk state
Status | Closed |
Id | 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.
PPP config shall exclude PRI interfaces without HDLC capability
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00
Calling party's number/name ignored when processing MESSAGE request
Status | Closed |
Id | 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
MESSAGE request rejected with 403 if registration lookup fails without trying 407
Status | Closed |
Id | 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
OEM specific Dect endpoint idle display
Status | Closed |
Id | 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.
Dect GUI user list search
Status | Closed |
Id | 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.
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 | Closed |
Id | 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.
Upload GUI css oem change
Status | Closed |
Id | 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.
Media re-negotiation with media-relay exclusive coder interface did not work
Status | Closed |
Id | 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
Empty facility messages sent to non-innovaphone equipment
Status | Closed |
Id | 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
Fax/Modem relay with G711u does not work
Status | Closed |
Id | 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
PBX Twin Phone feature did not work together with group indications
Status | Closed |
Id | 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
Trap in SIP message construction
Status | Closed |
Id | 38771 |
problem: Trap when SIP message with Content-Type header is constructed
solution: Initialize unused members to zero
files: sipmsg.cpp
products: all SIP
PBX SOAP SendMessage: Not possible to send messages to users at other PBXs
Status | Closed |
Id | 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
Media re-negotiation after transfer fails on SIP trunk and results in no-audio
Status | Closed |
Id | 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:
H.450 call-completion request coding failed if destination number empty
Status | Closed |
Id | 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
PBX: Restart when trying to add a node object without name
Status | Closed |
Id | 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
OEM specific location response message
Status | Closed |
Id | 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.
new phone mode "Use Phone Handset like a Headset, Ingnore Hookswitch Signals"
Status | Closed |
Id | 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
DECT Standby-Master only starts if LDAP is synchronized
Status | Closed |
Id | 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.
DECT MSF login
Status | Closed |
Id | 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.
port init confuses
Status | Closed |
Id | 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
Interop problem with SoundPoint IP 501
Status | Closed |
Id | 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.
IP110: cannot reach sent message screen
Status | Closed |
Id | 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
T38 capability indication at call setup (Interop Cirpack)
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
Conference Interface duplicate release
Status | Closed |
Id | 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.
VM trace messages without trace flag set
Status | Closed |
Id | 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
Mask for remote ip address filter not configurable for SIP interfaces
Status | Closed |
Id | 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
Bug on call handling on SIP/ISDN calls
Status | Closed |
Id | 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
Improve pseudo random number quality on IP6000 and IP4001
Status | Closed |
Id | 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
IP230: deactivated backlight level not being restored after reset
Status | Closed |
Id | 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
possible null pointer access in pbx_dtmf/dirsearch with btree::get_count
Status | Closed |
Id | 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
Trap, Voicemail <pbx-im> causes trap
Status | Closed |
Id | 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
no CLIP on internal calls with T-COM Concept P412
Status | Closed |
Id | 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
Status:
fixed in V7-hotfix4, 7.00, 8.00
T38 NAT Problem
Status | Closed |
Id | 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
OEM specific GUI redundant trunk state
Status | Closed |
Id | 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.
OEM specific DECT connection messages
Status | Closed |
Id | 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.
OEM specific Dect duplicate endpoint message option
Status | Closed |
Id | 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.
Strange characters in device name if too many öäü... are used
Status | Closed |
Id | 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
missing ring voltage after few days uptime
Status | Closed |
Id | 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
T38 NAT Problem
Status | Closed |
Id | 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
Call Forward to trunk does not work if can-redirect is set, but redirection not possible
Status | Closed |
Id | 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
new H.323 signaling option to transmit H.245 tunneled messages in Facility only
Status | Closed |
Id | 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
OEM specific broadcast message behavior
Status | Closed |
Id | 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.
no media when retrieving a call put on hold because of a MCast Announce call
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
too many 'No Media Data Received' events
Status | Closed |
Id | 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
sporadic assert in http.cpp
Status | Closed |
Id | 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
sporadic fifo problem on ac_dsp3
Status | Closed |
Id | 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
PBX: External calls not released automatically anymore
Status | Closed |
Id | 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
PBX: Reject External call rejects calls diverted with CFNR as well
Status | Closed |
Id | 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
Phone shall not play a local busy tone after another inband tone has been played already
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
DECT Standby-Master Trap
Status | Closed |
Id | 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.
Bug Fixes
V7 hotfix 5 (08-70300.14)
Changes included in Version 7 hotfix5 Definition
New Features
Missing attribute "entity" in dialog information XML
Status | Closed |
Id | 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
Paramter "rport" in Via header in 200/OK for REGISTER causes trouble
Status | Closed |
Id | 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.
Windows Mobile 6.1 SIP Client cannot cancel a call
Status | Closed |
Id | 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
Avoid re-negotiation on incoming call leg after connect on secondary registration
Status | Closed |
Id | 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
Incoming re-INVITE for a no-longer-existing call was handled like INVITE
Status | Closed |
Id | 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.
deprecated default ToS Value 0x10 for RTP even after factory reset
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00
Enbloc dialing fix for DECT
Status | Closed |
Id | 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.
Damaged authorization header in ACK
Status | Closed |
Id | 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
H.323 NAT did not forward RAS.NonStandardMessage and failed to decode EFC
Status | Closed |
Id | 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)
RTP not turned off with H.323 channel pause on IP-DECT
Status | Closed |
Id | 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
No Early-Media if doing rerouting from physical (ISDN) interface to physical interface in non-EFC cases
Status | Closed |
Id | 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
DECT null pointer trap
Status | Closed |
Id | 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.
PBX User Interface: Only 8 filters are supported for CF, but more could be entered
Status | Closed |
Id | 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
OEM specific sending of non-call facilities should disconnect TCP
Status | Closed |
Id | 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
Wrong branch parameter in Via header on ACK for 2xx response
Status | Closed |
Id | 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.
German/Swedish (åäöü) characters in HTTP Client
Status | Closed |
Id | 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
Trap in httpclient during file io access if no CF card is present
Status | Closed |
Id | 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
phones get confused within their 'missed calls list'
Status | Closed |
Id | 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
Status:
also relevant for V6hotfix14
Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function
Status | Closed |
Id | 39545 |
Description: GUI Diagnostics/TEL5-TEL8 missing, Diagnostics/TEL1-TEL4 trace flags without function.
Solution: Correct, add missing entries
Products affected: ip28
Risk: none
Status:
also relevant for V6hotfix14
Better Diagnostics for Free Error restarts
Status | Closed |
Id | 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
BYE was not sent when DNS resolving failed
Status | Closed |
Id | 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.
Trap if diverted call (with diverting leg2 info) received on ISDN with EDSS1
Status | Closed |
Id | 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
GN9120 DECT/DHSG Headset - No Media when a waiting call is accepted after the active call has been released by remote party
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300, 08-60900
Bug Fixes
V7 hotfix 6 (09-70300.16)
Changes included in Version 7 hotfix6 Definition
New Features
no ringing voltage after few days uptime
Status | Closed |
Id | 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.
Status:
also relevant for v6hotfix, V7, V8
IP-DECT: Allow overlap numbers
Status | Closed |
Id | 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.
The message indicating an active Automatic Redial disappears after first redial attempt
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
PBX SOAP: Compatibility to Version 6 broken with UserInfo "num"
Status | Closed |
Id | 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
Trap when the http connection timeout is reached immediately after the connection is dropped from remote
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
PBX CF Loop was detected with CFB, which was not even executed
Status | Closed |
Id | 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
IP-DECT master crash if config update and anonymous endpoints
Status | Closed |
Id | 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
sporadic HTTP_REQUEST Assertion
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
OEM specific 'scfg' command output
Status | Closed |
Id | 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
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 | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
ICMP Address mask requests shall be ignored
Status | Closed |
Id | 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
Status:
checked in to 8.00, 7.00, 08-70300
Dial funktion key shall provide a pause character for DTMF tone timing
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
Wrong "direction" attribute in dialog-info (group indications)
Status | Closed |
Id | 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
G711u exclusive doesn't work with dtmf featurecodes/directory search/icp pbx objects
Status | Closed |
Id | 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
icp traps with after dialed digits
Status | Closed |
Id | 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
Memory Leak when sending non-call facilities with OEM specific H.323 version
Status | Closed |
Id | 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
IP-DECT: Delete buttons for anonymous subscriptions in GUI
Status | Closed |
Id | 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.
IP-DECT OEM specific idle display
Status | Closed |
Id | 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.
IP-DECT GUI radio list sorting by Id
Status | Closed |
Id | 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.
PBX replication timeouts too short
Status | Closed |
Id | 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
IP-DECT GUI user list sorting
Status | Closed |
Id | 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.
PBX CDR should not be generated for call independent signaling calls
Status | Closed |
Id | 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
IP-DECT & SIP: Distinctive Ringing support for several OEM PBX
Status | Closed |
Id | 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.
Re-transmission of INVITE after CANCEL has been send
Status | Closed |
Id | 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.
LDAP, ASN.1-Encoding failed for objects with ~100 attributes
Status | Closed |
Id | 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
PBX: Callforward from waiting to waiting with CFNR at the end of announcement did not work sometimes
Status | Closed |
Id | 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
IP-DECT Master handover canceled statistic
Status | Closed |
Id | 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.
IP-DECT monitor interface for OEM modules
Status | Closed |
Id | 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.
RTP timestamp jumps during hold/retrieve/transfer
Status | Closed |
Id | 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.
Trap in SIP stack on incoming calls
Status | Closed |
Id | 40247 |
Problem: Trap in SIP stack on incoming calls.
Solution: Fix.
Files: siptrans.h
Products affected: All SIP devices
Risk: No risk.
Problem when CFNR should result in same phone ringing again together with busy on 1 call
Status | Closed |
Id | 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
IP-DECT Null pointer trap
Status | Closed |
Id | 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.
No authorization was done on de-regstration on SIP client interfaces
Status | Closed |
Id | 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.
Dialing from unknown reg for deployment did not work with CFU set at target user
Status | Closed |
Id | 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
transparent recording of external calls must be perfomed for inbound and outbound calls
Status | Closed |
Id | 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
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 | Closed |
Id | 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
TLS socket did not send up remaining data after TCP connection shutdown
Status | Closed |
Id | 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
SOAP monitored call to busy on ... busy endpoint was terminated with rel_com instead of disc
Status | Closed |
Id | 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
No media if Transfer done by SIP endpoint from H.323 to H.323 endpoint if SIP ep has done Hold/Retrieve
Status | Closed |
Id | 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
TLS could trap when sending big packets
Status | Closed |
Id | 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.
DTMF detection did not work randomly
Status | Closed |
Id | 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
Echo canceling sometimes not active on IP72
Status | Closed |
Id | 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
Out-Of-Memory trap during voice message recording
Status | Closed |
Id | 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.
assert with simultaneous write and read access to a cf file
Status | Closed |
Id | 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
Out of Memory trap when box is flooded with malformed/bad checksum packets
Status | Closed |
Id | 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.
Status:
checked in to 8.00, 7.00, 08-70300
IP-DECT Null pointer trap in Master (OEM)
Status | Closed |
Id | 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.
IP-DECT OEM module debug output trap
Status | Closed |
Id | 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.
After power up alt-gk was used instead of primary with IP-DECT
Status | Closed |
Id | 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
IP-DECT OEM module Mobmaster Master/Standby-Master login
Status | Closed |
Id | 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.
IP-DECT Null pointer trap in Master with anonymous handsets
Status | Closed |
Id | 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.
Duplicate execution of interface maps in case of setup without digits
Status | Closed |
Id | 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
Changing LDAP server login credentials must force clients to re-login
Status | Closed |
Id | 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.
LDAP server user account GUI doesn't accept 5 entries
Status | Closed |
Id | 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.
IP-DECT OEM trunk status inquiry
Status | Closed |
Id | 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.
Forward last diverting information (not the first)
Status | Closed |
Id | 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:
IP-DECT OEM remove endpoint data command for debugging
Status | Closed |
Id | 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.
LDAP-Expert-View with unknown Login
Status | Closed |
Id | 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.
always display full number/name of 1st calling party on pickup key if requested via configuration
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
DGPN Mapping Produced Nonsense Numbers
Status | Closed |
Id | 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.
IP-DECT OEM trunk state after config change
Status | Closed |
Id | 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.
immediate diversion activation after receiving icp activation code
Status | Closed |
Id | 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
Misrouting of GRE packets
Status | Closed |
Id | 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.
re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive"
Status | Closed |
Id | 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.
Potential Trap in RTP if error logging happens during call clearing
Status | Closed |
Id | 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
PROGRESS with in-band-info not sent on ISDN
Status | Closed |
Id | 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
IP-DECT OEM module Mobmaster missing endpoints
Status | Closed |
Id | 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.
Status | Closed |
Id | 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.
src-url not transmitted accross PBXs
Status | Closed |
Id | 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
configurable TCP send/recv window size to prevent running out memory with a big number of parallel http sessions
Status | Closed |
Id | 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).
Status:
checked in to 8.00,7.00,08-70300
Wrong redirecting number on retry of recall
Status | Closed |
Id | 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
Bad Noise Level in RTP Comfort Noise Packets
Status | Closed |
Id | 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.
Status:
PBX voice mail sends CN packets during message recording.
PBX: CDR missing some importent Information if call is forwarded by Waiting
Status | Closed |
Id | 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
Trap in SIP stack due to misalignment of data struct
Status | Closed |
Id | 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.
Use To header for routing of incoming MESSAGE requests
Status | Closed |
Id | 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.
VM. Escaping missing for directory names and CGPNs encoded in file names
Status | Closed |
Id | 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"/>
Portuguese translation not complete
Status | Closed |
Id | 41660 |
problem: portugeuese translation not complete
solution: fixed phonetext
files: phone/txt/phonetxt.base phone/txt/phonetxt.cpp
products: phones
risks: none
Number/Name update during call did not work
Status | Closed |
Id | 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.
add 'rebootn' and 'irebootn' command to make bootcode activation in update process unique in all versions
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-60900,08-70300
new 'name' metacharcter string #n in URL parameters in update commands
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
Trap when using SIP/TLS through NAT
Status | Closed |
Id | 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.
sectored firmware upload fails when the first firmware chunk sent to flashmanager is shorter 1000 byte
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
PBX: Trap when changing filters with 'next'
Status | Closed |
Id | 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
IP-DECT debug output
Status | Closed |
Id | 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.
httpclient does not flag EOF in last nonempty data packet when reading a file from local CF card
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
New interoperability option "/take-sendonly-as-inactive"
Status | Closed |
Id | 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.
AD Replication Configuration: Enable checkmark not always reflectig persistent config
Status | Closed |
Id | 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.
Config Template Objects not replicated to slave PBXs
Status | Closed |
Id | 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
Partner key without pickup functionality
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
IP-DECT Delay on incoming call as a configurable parameter
Status | Closed |
Id | 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.
IP-DECT trunk down events
Status | Closed |
Id | 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.
IP-DECT delayed user location registrations for trunks
Status | Closed |
Id | 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.
Bug Fixes
V7 Hotfix 7 (09-70300.17)
Changes included in Version 7 hotfix6 Definition
New Features
when transparent recording for external calls was configured, internal calls to voice mail were recorded too
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
v7hf7: Voicemail fails to prompt stored messages
Status | Closed |
Id | 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:
checkmark "Phone/Preferences/Keep Calling Party Info on Pickup Key" cannot be cleared
Status | Closed |
Id | 42257 |
problem: the checkmark could be set but not cleared.
solution: fix in code
files: phone_pref.xsl
products: all phones
risks: None
Status:
checked in to 8.00,7.00,08-70300
Bug Fixes
V7 Hotfix 8 (09-70300.19)
Changes included in Version 7 hotfix8 Definition
New Features
PBX-SOAP: Number update missing for overlap dialing
Status | Closed |
Id | 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
Suppress Name/Number update after transfer for endpoints calling with CLIR
Status | Closed |
Id | 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
PBX: Direct call from secretary to exec on slave did not work if call routed thru master
Status | Closed |
Id | 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
Problems with Number display in PBX config with escapes
Status | Closed |
Id | 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
PBX: External calls to users with 'Reject external Calls' should be rejeceted with 'Unassigned Number'
Status | Closed |
Id | 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
v7hf7: ringing frequency 50Hz instead of 25Hz
Status | Closed |
Id | 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:
IP-DECT OEM trap with locations reference
Status | Closed |
Id | 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.
Take 200 response w/o Contact header for REGISTER as reject
Status | Closed |
Id | 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.
Group Indications should show changed remote number
Status | Closed |
Id | 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
IP72: alarms originating from IP72 carry wrong & uninitialized netbios address IP72-00-00-00
Status | Closed |
Id | 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
In the Terminal Capability Set coder g711A shall preceede g711u
Status | Closed |
Id | 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
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 | Closed |
Id | 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
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 | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
IP-DECT New Radio BMC firmware version PCS05Ag
Status | Closed |
Id | 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.
reverse name resolution via external LDAP server fails if the number attribute list is terminated by a comma
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
memory leak after flash upload of invalid firmware files
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
IP-DECT display update after fast blind call transfer
Status | Closed |
Id | 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.
Firmware upload fails in ip1201 and ip4001 if a second brower instance gets the info screen.
Status | Closed |
Id | 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.
SOAP UserInfo: User was sometimes displayed as busy, even if free (Collateral damage from #40268)
Status | Closed |
Id | 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
H.323 media reneg. from SRTP-EFC to non-EFC does not work
Status | Closed |
Id | 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
SIP: From tag changes when re-trying REGISTER with authorization
Status | Closed |
Id | 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.
Redirection from alternate PBX (standby) should not be used to determine physical location
Status | Closed |
Id | 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
IP-DECT OEM trunk facility messages
Status | Closed |
Id | 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.
Failed t38 negotiation in SIP
Status | Closed |
Id | 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.
PBX obtaining licenses from master, wrong counting
Status | Closed |
Id | 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
PBX use cause "outgoing calls barred" for calls rejected because of a filter
Status | Closed |
Id | 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
Incoming INVITE is rejected with "603 Decline"
Status | Closed |
Id | 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.
Toggling between active and held call with the R-R (or R-2) key sequence does not work sometimes
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
Problem configuring public compact flash access
Status | Closed |
Id | 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.
IP3000 Wizard removes /nt config for PRI2
Status | Closed |
Id | 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
A registered SIP IF gets CDPN from To-URI (not Request-URI)
Status | Closed |
Id | 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.
Trailing slash not honored when processing unauthorized access list
Status | Closed |
Id | 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.
src-url not forwarded in pbx and gateway
Status | Closed |
Id | 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
cf card recognized, but partion table ignored
Status | Closed |
Id | 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
GWn Interfaces could not be selected as source for automatic generated routes
Status | Closed |
Id | 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
ISDN interop problem with Cisco Router with unrestricted digital information calls
Status | Closed |
Id | 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
Tunneled H.245 not handled while waiting for response to AdmissionRequest
Status | Closed |
Id | 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
"phys" attribute ignored for partial replication to slave
Status | Closed |
Id | 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
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300,08-60900
tftp access with httpclient fails on some tftp servers if the file path starts with a /
Status | Closed |
Id | 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
Permanent reboot after hardware reset with fixed IP address due to Watchdog Timer.
Status | To-decide |
Id | 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
IP-DECT option check called party number in Dectmaster
Status | Closed |
Id | 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.
Other new Features
42595 | vsi | fine grained locking bits for phone-settings and user-list-actions |
Bug Fixes
V7 Hotfix10 (09-70300.21)
Changes included in Version 7 hotfix10 Definition
New Features
SIP endpoint remains on hold after transfer (e.g. Bria)
Status | Closed |
Id | 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
IP-DECT OEM LDAP timing
Status | Closed |
Id | 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.
Disconnect of incoming SIP call fails if ACK was not received yet
Status | Closed |
Id | 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
Problem with configuration of compact flash access
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix11 (09-70300.22)
Changes included in Version 7 hotfix11 Definition
New Features
IP-DECT: Not possible to initiate Call Completion if PBX user monitored by SOAP
Status | Closed |
Id | 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
PBX: CFU Loop was detected, even if CFU was disabled by boolean
Status | Closed |
Id | 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
IP-DECT registration down reasons
Status | Closed |
Id | 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.
PBX Broadcast Conference and CFNR
Status | Closed |
Id | 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.
IP-DECT OEM Network region roaming
Status | Closed |
Id | 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.
Force HTTPS with non-standard ports
Status | Closed |
Id | 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
IP72: not transmitting continous timestamps in RTP data
Status | Closed |
Id | 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
HTML directory listing contains bad links
Status | Closed |
Id | 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
Configured ENUM Suffix got lost
Status | Closed |
Id | 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
Trap in SIP stack when processing REGISTER response
Status | Closed |
Id | 46448 |
problem: A trap may occur when handling REGISTER response.
solution: Fix.
files: sip.cpp
products: All SIP devices
risks: No risk
H.323 Wrong Unexpected Message events
Status | Closed |
Id | 46450 |
problem: The H.323 sometimes generates wrong Unexpecetd Message events.
solution: Disable Unexpected message events
files: h323sig.cpp
products: all
risks: None
New flash memory on IP200A/IP230/IP240
Status | Closed |
Id | 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
H.323: SRTP key was not forwarded to the caller in case of PBX to PBX calls with renegotiation
Status | Closed |
Id | 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
IP-DECT OEM protocol DTMF through RTP
Status | Closed |
Id | 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.
IP150 stays logically offhook after a call initiated via WEB interface has been released
Status | Closed |
Id | 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
H.323 Call to Waiting Queue with CFNR to another Waiting Queue with SIP Operator result in no media
Status | Closed |
Id | 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.
Counters display does not work with IE8
Status | Closed |
Id | 46508 |
problem: IE8 don't like img element without src attribute.
solution: replace <img> by
files: log_count.xsl
products: All devices
risks: No risk
phone may trap on late LDAP directory search result
Status | Closed |
Id | 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
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 | Closed |
Id | 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.
Media Recording generated small files even if no media was received
Status | Closed |
Id | 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
inband info received after disconnect of a connected call was lost in handsfree/headset mode because of automatic release
Status | Closed |
Id | 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
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 | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
IP-DECT OEM protocol new events
Status | Closed |
Id | 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.
IP-DECT Sometimes user login fails
Status | Closed |
Id | 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.
Unsolicity NOTIFY(simple-message-summary) rejected with 481
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix12 (09-70300.23)
Changes included in Version 7 hotfix12 Definition
New Features
phone must propagate error logs from call object to logging service
Status | Closed |
Id | 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
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 | Closed |
Id | 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
IP-DECT OEM Standby master capabilities
Status | Closed |
Id | 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.
Recall to user not in root node did not work
Status | Closed |
Id | 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
update 'scfg' command may hang if target url is invalid (non existent host or host rejects connect)
Status | Closed |
Id | 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
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 | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
H323 OEM event decoding
Status | Closed |
Id | 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.
SIP: "300 Multiple Choices" was not handled
Status | Closed |
Id | 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.
SIP: Assignment of incoming calls to signaling interface fails
Status | Closed |
Id | 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.
SIP interop: SAGEM fax server fails to receive t38 fax
Status | Closed |
Id | 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.
Trap when adding a group to a pbx dtmf child object
Status | Closed |
Id | 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
IP-DECT registration down reason text
Status | Closed |
Id | 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.
permit to search external directory for local numbers
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes
Status | Resolved |
Id | 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
ISDN interop flag "No-Disc" used to change handling of incoming DISC as well
Status | Closed |
Id | 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
PBX trap when adding many groups to a object
Status | Closed |
Id | 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
SIP: No ACK is sent
Status | Closed |
Id | 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.
don't report a sent() callback in a HTTP GET operation as an error
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
Gateway: Trap if too many maps configured at an interface
Status | Closed |
Id | 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
sporadic HTTP_REQUEST Assertion
Status | Resolved |
Id | 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
Feature code local clear of MWI
Status | Closed |
Id | 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.
IP-DECT OEM protocol DTMF as keypad
Status | Closed |
Id | 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.
Trap on dialing directory search object with http and full number including # to connect
Status | Closed |
Id | 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
IP24, IP28, IP302, IP305 dsp did not support renegotiation from PCM to VOIP
Status | Closed |
Id | 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
IP6000/2000 trap handler must be run on common stack to prevent false alarms in post mortem memory diagnostics
Status | Closed |
Id | 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
Status:
checked in to 8.00,7.00,08-70300
Trap on SIP call clearing
Status | Closed |
Id | 47511 |
Problem: Trap on SIP call clearing.
Solution: Fix double delete of call object.
Files: sip.cpp
Products affected: SIP devices
Risk: No risk.
Quickdial, Incorrect Display for Umlaute
Status | Closed |
Id | 47512 |
Problem: Quickdial, Incorrect Display for Umlaute.
Solution: UTF-8 decode display info
Files: pbx_qdial.cpp
Products affected: PBX products
Risk: No risk.
IP-DECT OEM Network region roaming user attribute
Status | Closed |
Id | 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.
Wrong DTMF when dialing DTMF feature codes from analog devices
Status | Closed |
Id | 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
IP-DECT OEM location update during handover
Status | Closed |
Id | 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.
SIP: Missing request re-transmission after 100/Trying
Status | Closed |
Id | 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.
incorrect pointer assignment in submit_config of dtmf/icp object and false configuration possibility
Status | Closed |
Id | 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
IP22 Interop with devices that do not support T38 redundancy and retransmits
Status | Closed |
Id | 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
permit to control the display format of names from local/PBX directory the same way as for external directories
Status | Closed |
Id | 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
Status:
7.00,08-70300
malloc must always run disabled
Status | Closed |
Id | 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
Status:
checked in to 7.00,08-70300
prevent creation of pbx dtmf object with char '#' in long name
Status | Closed |
Id | 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
provide uptime and local time of trap in debug log
Status | Closed |
Id | 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
Status:
checked in to 7.00, 08-70300
MWI configuration options
Status | Closed |
Id | 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.
PBX Broadcast Conference Option
Status | Closed |
Id | 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.
IP-DECT idle display update
Status | Closed |
Id | 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.
SIP: Handling of transfer to different ip address
Status | Closed |
Id | 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
IP-DECT OEM module software update
Status | Closed |
Id | 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.
SIP: Problem with media negotiation after 488
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix13 (10-70300.24)
Changes included in Version 7 hotfix13 Definition
New Features
SIP: Media negotiation problem at Alcatel Omni PCX
Status | Closed |
Id | 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.
SIP: No switch from local ringback tone to inband ringback tone
Status | Closed |
Id | 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.
SIP: Problems with DTMF when interworking v5 devices to SIP
Status | Closed |
Id | 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.
VM: Trap, Double-Free after sending Email with Body
Status | Closed |
Id | 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
One-way-voice after retrieve together with SRTP, H323 and Registration with password
Status | Closed |
Id | 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
Call-Completion display at called phone not deleted if calling/called in same but not root node
Status | Closed |
Id | 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
PBX: Trap if corrupt CF in flash
Status | Closed |
Id | 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
Gateway Routing Table: Routing a call to a Gatekeeper registration using Name Out did not work anymore
Status | Closed |
Id | 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
Missing normalization of received diverting leg info
Status | Closed |
Id | 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
PBX: Trap when receiving Facility during disconnect
Status | Closed |
Id | 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
allow empty search base in directory search object
Status | Closed |
Id | 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
Memory Leak
Status | Closed |
Id | 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.
PBX: As diverting number the real number was sent even if Send Number configured
Status | Closed |
Id | 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
PBX: Reject external calls did not work as desired together with call forward
Status | Closed |
Id | 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
IP240-1000 - network connectivity lost after restart of the physical layer controller because of spurious errors
Status | Closed |
Id | 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
Status:
checked in to 7.00,08-70300
Leaks with DECT signalling using TLS
Status | Closed |
Id | 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
Potential trap when reconfiguring Gateway interfaces
Status | Closed |
Id | 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
Gateway: Trap if reconfiguring an analog interface registration with Feature Code support
Status | Closed |
Id | 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
IP-DECT facility entity memory leak
Status | Closed |
Id | 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.
Master PBX to obtain licenses from another Master
Status | Closed |
Id | 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
IP2000/IP6000 must permit more than 8000 users
Status | Closed |
Id | 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
Status:
checked in to 7.00,08-70300
PBX: Reference to Config Template lost, when opening User from Registrations page
Status | Closed |
Id | 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
Bug Fixes
V7 Hotfix14 (10-70300.25)
Changes included in Version 7 hotfix14 Definition
New Features
Need to configure 'Route Root-Node External Calls to' in case of 'License Only' on Slave
Status | Closed |
Id | 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
Media Renegotiation from H.323 Slowstart to H.323 EFC failed accross multiple PBXs
Status | Closed |
Id | 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
Gateway: CGPN Map at route was executed even if the call using this route failed
Status | Closed |
Id | 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
H.323: EFC coding wrong
Status | Closed |
Id | 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
SIP: Not accepting calls from alternative proxy
Status | Closed |
Id | 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.
SIP: 180/Ringing was not re-transmitted
Status | Closed |
Id | 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.
PBX: After CFNR from Waiting with end of first announcement no MOH during call proceeding/alerting
Status | Closed |
Id | 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
headset mode must be kept when a knocking call is accepted via operator while a disconnected call is pending
Status | Closed |
Id | 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
Status:
checked in to 7.00,08-70300
IP800 conference
Status | Closed |
Id | 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.
IP302/IP305: PCM connected channels disconnect other channels media
Status | Assigned |
Id | 49880 |
problem: disconnect is sent to wrong channel
solution: fixed in code
files: ac_dsp3.cpp
products: ip302 ip305
risks: low risk
One-way-voice after unpark/pickup together with SRTP, H323 and Registration with password
Status | Closed |
Id | 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
Media Negotiation between SIP and H.323 failed if Offer from both sides available
Status | Closed |
Id | 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
PBX: Special fix for group-indications to exec now for exec only
Status | Closed |
Id | 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
GUI: Registration indicator not aligned
Status | Closed |
Id | 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.
Gateway sends calls to wrong registered SIP endpoint
Status | Closed |
Id | 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.
AD Replicator, Searches to Global Catalog Server weren't possible
Status | Closed |
Id | 50130 |
Description \tproblem: Searches to Global Catalog Server weren't possible
solution: Fix configuration for LDAP port
files: ldaprep.cpp
products: all PBX-,Dect products
risks: None
fat32 check disc trap
Status | Closed |
Id | 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
SIP: Expires parameter not always decoded from REGISTER response
Status | Closed |
Id | 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.
Wrong calling party info on CTI initiated calls from a phone to a Trunk Object with 'Set Calling=Diverting No' checked
Status | Closed |
Id | 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
Status:
Additional Information \tchecked in to 7.00,08-70300
IP-DECT hanging calls
Status | Closed |
Id | 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.
Bug Fixes
V7 Hotfix15
Changes included in Version 7 hotfix15 Definition
New Features
INCA phones - monitoring a headset conversation via handset (headset-spy) did not work
Status | Closed |
Id | 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
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 | Closed |
Id | 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
Status:
checked in to 7.00, 08-70300
Progress Indicator 'Call not end to end ISDN' sent with each H.323 alert
Status | Closed |
Id | 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
wrong calculations causing check disc to damage data
Status | Closed |
Id | 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:Qsig: leg1Info sent with ALERT msg, instead of in FACILITY msg
Status | Closed |
Id | 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
Phone: Local coder config was not used on outgoing phone calls
Status | Closed |
Id | 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.
PBX-CDR: Local Time wrong (same as UTC)
Status | Closed |
Id | 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
IP-DECT wrong forward of internal information event
Status | Closed |
Id | 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.
no RTP-DTMF after rerouting
Status | Closed |
Id | 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
v7: Trace output added to track down cause of "alloc-size" traps
Status | Closed |
Id | 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
IP-DECT trap during call release and information message
Status | Closed |
Id | 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.
IP-DECT configuration option 'Redirection with GK ID'
Status | Closed |
Id | 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.
One way media after SRTP renegotiation on IP6000
Status | Closed |
Id | 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
Trap in SRTP socket
Status | Closed |
Id | 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
Possible trap when removing a cf card without previous unmount
Status | Closed |
Id | 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
Trap if some but not all interfaces of a given type are unlicensed
Status | Closed |
Id | 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
PBX: SOAP initiated calls were sent with CT-SETUP
Status | Closed |
Id | 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
PBX: Successive diversion activate/deactivate and dynamic group status sometimes failed
Status | Closed |
Id | 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
SIP: Missing dialog-info for calls without or zero-length CGPN
Status | Closed |
Id | 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.
PBX potential trap in case of collision of disconnect with intrusion and other operations changing media peer
Status | Closed |
Id | 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
SIP: SRTP key changes right after connect
Status | To-decide |
Id | 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.
Bug Fixes
V7 Change Requests
These are change requests applicable for v7, which are considered for implementation. Definition