Reference:Release Notes Firmware

From innovaphone wiki
Jump to navigation Jump to search
There are also other versions of this article available: Reference (this version) | Reference8 | Reference9 | Reference10 | Reference11r1 | Reference11r2 | Reference12r1 | Reference12r2 | Reference13r1 | Reference13r2 | Reference13r3 | Reference14r1 | Reference14r2

This is the Version 7 firmware Release Notes.

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

Please see the disclaimer before using the information presented here!


Firmware V7

V7 Hotfix 1 (08-70300.06)

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

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

Solution: enable the "Save" link in xsl file

Products affected: All

Risk: None

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

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

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

Products affected: All INCA phones and IP72

Files: phonesig.cpp, phonesig.h

Risk: Minimal, direct signalling not used in innovaphone environment

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

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

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

Products affected: IP1200

Files: update.cpp

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

203 - Avoid endless authentication re-trying

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

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

Files: sip.cpp

Products affected: All devices

Risk: No risk

127 - CFU to Voicemail/Redial

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

solution: send divertingLegInformation1 to caller

products: All PBX products

risk: none

179 - Changed keep alive configuration for oem interoperability

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

Solution: Keep alive is enabled for OEM.

Files: dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal. OEM specific.

215 - Clear all sockets if registration changes

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

solution: cleanup all sockets if registration changes

files: h323.h h323sig.cpp

products: IP1200

risks: limited to IP1200

160 - croatian translation corrections

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

Solution: corrected

Products affected: All phones

Risk: None

133 - Debugging Info for MAX_BUSY_TICKS improved

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

Solution: Debug Information added

Products affected: All

Risk: None, code only executed on a trap

185 - Dect MWI message center number configurable to user number

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

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

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

Products affected: All Dect devices.

Risk: Minimal.

128 - Dect SIP registration to PBX with authentication name

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

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

Files: dectmaster.cpp.

Products affected: All Dect devices.

Risk: Minimal.

134 - Display Master Id in users list

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

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

Products affected: IP1201, IP4001

Risk: Minimal

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

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

Solution: free DSP channel.

Products affected: All INCA phones and IP72

Files: phonesig.cpp, phonesig.h

Risk: Low, very unlikely to happen in innovaphone environment

199 - Factory reset with V7 bootcode clears linear firmware

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

Solution: check added

Files: flash_firmware.c

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

Risk: general bootcode update risk

172 - Firmware stall with MAX_BUSY_TICKS and Watchdog

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

solution: disable this interrupt

files: si3241.cpp

products: ip28

risks: minimal, very isolated fix

207 - Fix for internal test module for Dect

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

Solution: Fixed.

Files: dummysig.h, dummysig.cpp.

Products affected: All Dect devices in test mode.

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

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

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

fix: api_remote_hold on connector after SIG_ALERT

products affected: all pbx devices

risk: minimal

132 - Fix for Session-Expires handling

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

Solution: Restart the timer with the original expires value.

Products affected: All

Risk: Minimal

213 - Fix for trap in HTTP client

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

solution: fixed in code

files: httpclient_i.cpp

products: all products

risks: no risk

140 - Forwarded Name Id sometimes corrupted

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

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

Products affected: All products with IP-DECT or PBX

Risk: Minimal, very isolated fix

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

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

Solution: New Dect Radio BMC firmware.

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

Products affected: IP1200.

Risk: Normal.

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

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

solution: Implement periodic RoundTripDelayRequest messages

files: h323ch.cpp/h

products: all

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

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

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

solution: Use existing TCP socket for these messages

files: h323sig.cpp

products: all

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

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

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

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

Products affected: All INCA phones and IP72

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

Risk: Low, direct signalling not used in innovaphone environment

139 - Idle display updates if masters are down

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

Solution: Idle display update added.

Products affected: IP1201, IP4001.

Risk: Minimal.

147 - IP-DECT Sporadic Hanging Radio Calls

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

Solution: Improve call clearing to avoid this.

Products affected: All IP-DECT products

Risk: Minimal, very isolated fix.

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

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

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

Products affected: IP150

Files: fxf.xsl

Risk: None

141 - IP22 running out of sync

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

Solution: Initial value must be set correctly.

Products affected: ip22

Risk: Minimal, very small change

163 - IP72: default backlight off

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

Solution: fixed code to activate backlight (level 9)

Products affected: IP72

Risk: None

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

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

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

Products affected: IP72

Risk: None

125 - IP72: new display driver for LCD NT75451

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

Solution: fixed in code

Products affected: IP72

Risk: None

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

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

solution: read vars1, set accordingly

files: lcd_ip22x.cpp

products: IP72

risks: none

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

Ticket #36197. Problem: Stack was initialized

Solution: Stack init removed

Files: ip800.cpp

Products affected: IP800

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

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

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

products affected: all pbx devices

risk: minimal

138 - Load balancing for trunks

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

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

Products affected: IP1201, IP4001

Risk: Minimal.

156 - Logging of calls in PBX cannot be turned off

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

solution: Call logging configurable

products: All products with PBX

files: pbx.cpp/h log.xsl

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

171 - Make H.245 keepalive with RoundTripDelay messages configurable

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

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

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

products: all

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

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

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

Solution: Map to cause #17 (User Busy)

Files: sip.cpp

Products affected: All devices

Risk: No risk

143 - Memory leak in Dect

Ticket #35819. Problem: Memory leak in Dect.

Solution: Call clean up function.

Products affected: IP1200.

Risk: Minimal.

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

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

solution: Free the packets

files: dtmffty.cpp

products: All IP-DECT

risks: Almost no risk

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

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

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

Products affected: All INCA phones and IP72

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

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

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

Solution: fix code

Products affected: All

Risk: None

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

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

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

files:

products: phone_inca, ip72

risks: none

186 - MWI not updated at PP power up

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

Solution: Sending mwi state after receiving power up event.

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

Products affected: IP1200.

Risk: Minimal.

168 - Need to set H.323 terminal_type for OEM

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

solution: terminal_type configurable

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

products: all

risks: Minimal. Functionality not used in innovaphone products

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

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

solution: STATUS_INQ/STATUS in H.323 stack implemented

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

products: all

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

152 - New cause code mapping specification

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

Solution: Cause code mapping changed.

Products affected: IP1201, IP4001.

Risk: Minimal.

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

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

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

Files: sip.cpp

Products affected: All devices

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

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

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

Solution: Forward media negotiation result

Products affected: All IP-DECT

Risk: None

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

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

Solution: Fixed.

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

Products affected: IP1200.

Risk: Minimal.

180 - OEM specific call status support

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

Solution: Call status support implemented. OEM specific enabled.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal. OEM specific.

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

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

Solution: Registration configuration changed.

Files: dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

187 - OEM specific Dect ras connection up event

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

Solution: Ras connection up event handling changed.

Files: dectradio.h, dectradio.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

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

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

solution: Disable the change login feature for OEM

files: command.cpp command.h

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

risk: Only for OEM products

208 - OEM specific GUI view

Ticket #36285. Problem: New OEM specific GUI.

Solution: Files changed.

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

Products affected: IP1201, IP4001.

Risk: No risk; oem specific, only GUI.

176 - OEM specific location handling during handover

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

Solution: OEM specific location handling changed.

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

Products affected: IP1201, IP4001.

Risk: Minimal.

188 - OEM specific location state for disconnected radio connections

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

Solution: Implementation of location state handling changed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP1201, IP4001.

Risk: Minimal.

175 - OEM specific pre-dial support

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

Solution: Pre-dial support for OEM added.

Files: dectmaster.cpp

Products affected: IP1201, IP4001.

Risk: Minimal.

216 - OEM specific registration handling if a trunk goes down

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

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

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

174 - OEM specific trunk busy handling

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

Solution: Handling changed.

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

Products affected: IP1201, IP4001.

Risk: Minimal.

189 - OEM specific trunk configuration option

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

Solution: Option removed.

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

Products affected: IP1201, IP4001.

Risk: Minimal.

177 - OEM specific trunk redundancy feature

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

Solution: Feature implemented.

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

Products affected: IP1201, IP4001.

Risk: Minimal.

183 - OEM specific unused feature codes

Ticket #36123. Problem: Unused feature codes.

Solution: Unused feature codes disabled.

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

Products affected: IP1201, IP4001.

Risk: Minimal.

218 - PBX routing fails, because access to deleted buffer

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

solution: Delete buffer after call routing

files: pbx.cpp

products: All with PBX

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

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

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

Solution: fix evaluation of boolean options

Files: phonesig.cpp

Products affected: all INCA phones, IP72

Risk: None

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

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

solution: Handle a transfer to the executive

files: pbx_exec.cpp, pbx_exec.h

products: all with PBX

risks: Minimal, very isolated fix

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

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

Solution: Wait with cleanup until all calls are cleared

Products affected: All

Risk: Minimal, very isolated fix

181 - Prevent high Dect-Master CPU load

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

Solution: Reuse of radio-master TCP connection.

Files: dectmaster.cpp, dectradio.cpp.

Products affected: IP1200.

Risk: Minimal. Tested in previous version.

155 - Prevent random INCA leak reports in test

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

Solution: use vars notify mechanism instead of polling

Products affected: All INCA phones, IP72

Risk: None

149 - provide OEM specific DHCP Vendor Class Identifier

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

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

Products affected: All

Risk: Minimal

136 - Refresh rate of call list gui pages

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

Solution: Refreshing removed.

Products affected: All Dect devices.

Risk: Minimal.

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

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

solution: Invalid cast fixed

files: pbx.cpp

products: All products with PBX

risks: Minimal

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

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

Solution: Jitter buffer fixed, to handle this better.

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

Files: medialib.h, media.cpp

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

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

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

solution: sending of NOTIFY(sipfrag) with error code

products: All products

files: sip.cpp

risk: minmal

137 - Short local tone

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

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

Products affected: IP1201, IP4001.

Risk: Minimal.

130 - SIP debug output to be removed

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

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

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

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

Products affected: All INCA phones and IP72

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

211 - SIPS missing in phone UI in protocol list

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

solution: fixed in code

files:

products: phone_inca, ip72

risks: none

129 - SOAP LocationUrl return value coding

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

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

200 - Support for IP111

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

solution: changed code

files: lcd_ip111.cpp

products: all phone-inca phones

risks: none

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

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

Solution: toggle the dns_primary flag only once

Products affected: All

Risk: Minimal

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

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

solution: fix buffer size

files: command.cpp

products: all

risks: none

126 - Trap During TLS Connection Termination

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

Solution: Fixing state machine

Products affected: All

Risk: none

162 - Trap if no PBX line in OEM specific state

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

Solution: PBX line check added.

Files: dectmaster.cpp

Products affected: IP1201, IP4001.

Risk: Minimal.

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

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

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

files: inno_lic.cpp

products: All products with PBX

risks: No risk

195 - Unclosed announcement calls in conference

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

Solution: Fixed.

Files: pbx_bc_conf.cpp.

Products affected: All devices with PBX.

Risk: Minimal, only Broadcast Conference PBX Object.

145 - Undeleted call facility object

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

Solution: Deleting corrected.

Products affected: All Dect devices.

Risk: Minimal.

144 - Undeleted calls from anonymous handsets.

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

Solution: Deleting corrected.

Products affected: All Dect devices.

Risk: Minimal.

150 - Unusual memory leaks after closed calls

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

Solution: Call clean-up function for unused events.

Products affected: All devices.

Risk: Minimal.

202 - URI parameter "epid" in AOR

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

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

Files: sip.cpp, sip.h

Products affected: All devices

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

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

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

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

Files: boot.h startup_*.S

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

Risk: low

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

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

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

products: All PBX products

files: pbx_wait.cpp

risk: minmal

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

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

solution: Send diverting leg1 info in this case

files: pbx_wait.cpp

products: All products with PBX

risks: minimal. Isolated to forwarded calls to waiting.

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

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

solution: Remove XPARENT from list

files: channel.h

products: all

risk: none

V7 Hotfix 2 (09-70300.08)

283 - Added SIP interop tweak "Enforce Sending Complete"

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

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

files: sip.cpp relay_edit_voip.xsl relay_edit_sip.xsl

products: All gateway devices using SIP

risks: no risk

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

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

solution: adjust tftp entry, call cache_init

files: startup_ac460.s cache_ac460.s boot.h

products: ip800 ip1200 ip1201

risks: none

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

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

Products affected: PBX

Files: pbx.cpp

Risk: seems to be low but needs test

254 - Authentication name for SIP registration in DECT devices

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

Solution: Fixed.

Files: dectusers.cpp.

Products affected: All DECT devices.

Risk: Minimal.

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

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

solution: no epid parameter when interface is not registered

files: sip.cpp

products: All products with PBX or GATEWAY

risks: no risk

281 - Calls from registered devices were rejected

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

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

files: siptrans.cpp

products: All PBX and Gateways using SIP

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

242 - clip retry

Ticket #36702. problem: clip reception not assured

solution: sent more than once

files: ab_sig.cpp si3241.cpp

products: ip28

risks: very low

258 - Dect frequency and other bases GUI page

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

Solution: Fixed.

Files: dect.cpp, dect.xsl.

Products affected: IP1200.

Risk: Minimal.

267 - Dect GUI error message because of duplicate long name

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

Solution: An additional check for this case is added.

Files: dectusers.cpp.

Products affected: All devices.

Risk: Minimal.

261 - Dect GUI user list

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

Solution: Sort order handling changed.

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

Products affected: IP1200.

Risk: Minimal.

294 - Diverting Info not forwarded by Gateway

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

solution: Forward diverting info even if interworking is not enabled

files: relay.cpp

products: All gateway devices

risks: no risk

262 - DSP code update for IP6000/IP800 and related

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

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

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

products: ip800 ip1200 ip1201 ip4001 ip6000

risks: low

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

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

Solution: fix it

Products affected: all

Files: update.cpp

Risk: none

264 - fix for ALARM flooding in SIP

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

solution: send this ALARM only once

files: sip.cpp siptrans.cpp siputil.h

products: All devices using SIP with STUN server

risks: low risk

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

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

solution: forward received calling party's name identification

files: pbx_wait.cpp

products: All PBX waiting queues

risks: low risk

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

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

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

files: h323sig.cpp

products: all

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

293 - H.323: Duplicate TerminalCapabilitySetAck message sent sometimes

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

solution: Only send a single TerminalCapabilitySet message

files: h323ch.cpp

products: all

risks: Minimal

278 - H.450 returnError for callTransferInitiate not implemented

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

Solution: implemented

Files: h450.cpp

Products affected: All devices

Risk: Minimal

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

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

solution: release call leg on receipt of CT_INITIATE_RESULT

files: pbx_xml.cpp

products: All PBX devices

risks: low risk

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

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

solution: config option to use remote instead of local domain

files: sip.cpp

products: All gateway devices

risks: no risk

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

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

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

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

products: all phones

risks:nome

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

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

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

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

products: all with PBX

risks: Small risk of collateral damage

227 - IP header of IGMP reports contains invalid Option field

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

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

Products affected: all products

Files: ipproc.cpp

Risk: None

236 - IP4001 minifirmware sometimes doesnt start

Ticket #36658. problem: unused IRQ are not disabled

solution: disable unused IRQs

files: ip4001.cpp

products: ip4001

risks: none

249 - IP4001 production test interface start procedure is unreliable

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

solution: use config flags mechanism instead

files: ip4001.cpp, prodtestif_init.cpp

products: ip4001

risks: none

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

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

solution: update xsl file

files: falc56_drv.xsl
products: ip6000

risks: low

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

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

solution: Interop option added to use REL instead

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

products: All with ISDN interfaces

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

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

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

solution: Keep original call

files: phonesig.cpp

products: All phone devices

risks: no

235 - Media negotiation problem at OCS

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

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

files: sip.cpp

products: All gateway products

risks: causing other media negotiation problems

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

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

solution: Media Neg. fixed

files: h323ch.cpp

products: all

risks: Small risk of collateral damage

305 - Missing name identification on waiting queue during DTMF dialing

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

solution: forward name identification

files: pbxwait.cpp

products: All PBX devices

risks: no risk

292 - Name Identification in Diverting Info

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

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

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

products: All devices

risks: low risk

241 - no ringing voltage

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

solution: change some initial register values

files: si3241.cpp, si3241.h

products: ip28

risks: none

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

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

solution: Bug fixed to avoid crash

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

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

risks: No real risk

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

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

solution: Send saved dialing info after CONN

files: h323sig.cpp, h323_tbl.tbl

products: all

risks: Minimal risk of collateral damage

297 - OEM specific available coders

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

Solution: Coder G726-32 is not shown.

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

Products affected: IP4001, IP1201.

Risk: Minimal.

298 - OEM specific call release

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

Solution: Release event handling fixed.

Files: dtmffty.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

268 - OEM specific cause code mapping

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

Solution: Mapping changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

259 - OEM specific dynamic ras connections

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

Solution: Test flag for usage counter added.

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

Products affected: IP4001, IP1201.

Risk: Minimal.

286 - OEM specific endpoint deleting

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

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

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

260 - OEM specific ethernet connection failure handling improved

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

Solution: Inform Dect system about permanent connection failure.

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

Products affected: IP4001, IP1201.

Risk: Minimal.

222 - OEM specific infinite loop because of invalid pointer

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

Solution: Pointer update during endpoint update added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

306 - OEM specific MSD handling when doing media renegotiation

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

solution: Option to not send MSD in this case

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

products: all

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

279 - OEM specific radio unregistration handling

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

Solution: Implementation changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

219 - OEM specific registration handling if a trunk goes up

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

Solution: Reregistration of users added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

300 - OEM specific sig media info messages filter

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

Solution: Sig media info messages are filtered.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

299 - OEM specific Suppl. Service MWI

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

Solution: Implementation and configuration fixed.

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

Products affected: IP4001, IP1201.

Risk: Minimal.

265 - OEM specific trunk location registration

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

Solution: Implementation changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

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

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

Solution: Implemented for OEM.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

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

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

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

Files: sip.cpp.

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

Risk: Unexpected problems with no-reg or enum interfaces

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

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

solution: Media Negotiation bug fixed

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

products: all

risks: There is a small risk of collateral damage

245 - park function key extensions to provide line key functionality

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

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

Products affected: all phones

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

Risk: Low, behaviour changed only if explicitely configured

257 - Password complexity

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

Solution: Fixed.

Files: password.cpp, latin1.h.

Products affected: All devices.

Risk: Minimal.

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

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

Solution: check for disabled feature codes

Files: pbx_dtmf.cpp

Products affected: all pbx devices

Risk: none

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

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

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

files: pbx_edit_dtmf-ctrl.xsl

products: all pbx products

risks: no

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

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

solution: Error log implemented

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

products: All with PBX

risks: very small risk of collateral damage

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

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

solution: Routing fixed

files: pbx.cpp

products: all with PBX

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

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

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

solution: Routing fixed

files: pbx.cpp

products: All products with PBX

risks: Collateral damage in the context of PBX call routing

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

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

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

files: pbx.cpp

products: All products with PBX

risks: No known risks

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

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

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

files: pbx.cpp

products: all with PBX

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

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

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

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

files: pbx.cpp

products: all products with PBX

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

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

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

solution: Implementation from v6 put back

files: pbx.cpp

products: All products with PBX

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

272 - Potential trap on outbound ENUM SIP calls

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

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

Files: sip.cpp

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

Risk: Minimal.

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

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

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

files: sip.cpp

products: All devices

risks: risk

304 - Problems using SIP for box internal signaling

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

solution: more sophisticated remote address verification

files: siptrans.cpp

products: All Gateway devices

risks: no risk

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

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

Solution: Quickdial object must proceed the incoming call.

files: pbx_qdial.cpp

products: All PBX devices

risks: none

221 - R-key usage after handover in alerting state

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

Solution: Radio call state set command added.

Files: dectradio.cpp.

Products affected: All dect devices.

Risk: Minimal.

223 - SIP allocation limit is too low at 500kB

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

Solution: Use the platform dependend limit

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

Products affected: All devices

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

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

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

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

files: siptrans.cpp

products: All gateway devices using SIPx to register remotely

risks: low risk

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

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

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

files: siptrans.cpp, siptrans.h

products: All products

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

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

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

solution: Do not terminate these calls

files: sip.cpp

products: All products with PBX or GATEWAY

risks: Problems with re-negotiation later on

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

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

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

files: pbx.cpp

products: All products with PBX

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

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

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

solution: Fix to be offered with v7 hf2.

files: fp_xcode.cpp

products: All products with CF card

risks: none

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

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

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

files: h323sig.cpp, h323sig.h

products: all

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

243 - sprintf from standard library pulled by ip6000 ethernet lib

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

Solution: use _sprintf

Products affected: IP6000/IP2000

Files: IxEthDBUtil.c

Risk: None

280 - Standby master reports missed radios delayed

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

Solution: Standby master checks missed radios delayed.

Files: dectmaster.cpp.

Products affected: All Dect devices.

Risk: Minimal.

290 - Standby Mobility Master client registration status wrong

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

Solution: Fixed.

Files: dectmobmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

289 - Switching back from MOH did not work sometimes

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

solution: fix media negotiation

files: sip.cpp

products: All devices using SIP

risks: unexpected problems with media negotiation

239 - syslog not available in viewer mode

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

solution: give access to syslog in viewer mode

files: log.xsl

products: All products

risks: no risk

253 - TLS client authentication for interoperability with OCS

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

solution: TLS client authentication implemented.

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

products: All

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

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

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

solution: Check for this condition added

files: pbx.cpp

products: all with PBX

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

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

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

solution: Check for this situation implemented

files: media.cpp medialib.h

products: all

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

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

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

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

files: h323sig.cpp

products: all

risks: None

247 - UART modem IRQ not serviced

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

solution: read MSR register

files: uart_drv.cpp

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

risks: none

248 - UART not part of IP4001 project

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

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

files: ip4001.vcproj uart_drv.cpp

products: ip4001 ip3000 ip1200 ip1201

risks: low

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

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

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

Products affected: all phones

Files: ?

Risk: none

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

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

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

Files: sipmsg.cpp

Products affected: all devices

Risk: none

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

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

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

files: h323ch.cpp

products: all

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

234 - Wrong or duplicate MWI interrogation

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

Solution: Implementation fixed.

Files: dtmffty.cpp.

Products affected: All dect devices.

Risk: Minimal.

V7 Hotfix 3 (09-70300.11)

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

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

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

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

327 - CallIdentifier missing in some H.323 Facility messages

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

solution: CallIdentifier added

files: h323sig.cpp

products: all

risk: Minimal risk of collateral damage

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

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

Solution: perform the callback when the phone is going idle

Products affected: all phones

Files: phonesig.cpp

Risk: none

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

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

solution: Do no remove this license anymore

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

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

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

solution: show SIP proxy

files: gk.h gk.cpp relay_ifs.xsl

products: All Gateway devices

risks: no risk

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

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

Solution: Fixed.

Files: dectusers.cpp.

Products affected: IP1200.

Risk: Low.

326 - DECT PBX messaging

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

Solution: Fixed.

Files: dectmaster_if.h.

Products affected: IP1200.

Risk: Low.

324 - DSP trap fixed for IP6000/IP800 and related

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

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

files: ac48xdef.h ac48xlo.c userdef.h

products: ip800 ip1200 ip1201 ip4001 ip6000

risks: low

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

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

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

files: channel.cpp

products: all

risks: Minimal risk of collateral damage

319 - Fix: TLS socket shutdown flow with Internet Explorer

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

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

files: tls.cpp, tls.h

products: all

risks: Minimal risk of collateral damage

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

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

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

files: sip.cpp sip.h

products: All gateway devices

risks: no risk

325 - IP1200 Trap with MWI event (MSF)

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

Solution: Event handling fixed.

Files: dect.cpp.

Products affected: IP1200.

Risk: Normal.

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

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

solution: Make sure the string is 0 terminated

files: inno_lic.cpp

products: all

risks: No risk

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

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

solution: Check for local address fixed

files: h323ch.cpp

products: all

risks: Minimal risk of collateral damage

323 - Multilevel Slaves did not work

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

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

files: pbx.cpp, pbx.h

products: all with PBX

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

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

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

solution: Put all in one media description

files: sip.cpp

products: All Gateway and PBX devices

risks: no risk

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

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

solution: Send MSD-ACK in this case

files: h323ch.cpp

products: all

risks: Minimal risk of collateral damage

320 - OEM specific alarm report for Standby Master registrations

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

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

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

Products affected: IP4001, IP1201.

Risk: Minimal.

321 - OEM specific GUI for Standby Master

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

Solution: Fixed in OEM specific GUI file.

Files: dectmaster.xsl(oem).

Products affected: IP4001, IP1201.

Risk: Minimal.

316 - OEM specific PBX options

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

Solution: Options changed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal.

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

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

solution: These attribs added to the list of changeable attribs

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

322 - Wait for ACK before starting next re-negotiation

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

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

files: sip.cpp

products: All devices

risks: collateral damage on media negotiation process

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

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

solution: Validate local ip address before sending re-INVITE

files: sip.cpp

products: All Gateway and PBX devices

risks: no risk

V7 hotfix 4 (09-70300.13)

393 - Bug on call handling on SIP/ISDN calls

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

solution: Cleanup postponed events on call release.

files: sip.cpp

products: All with SIP

risks: No risk

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

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

solution: Adjust number only if redirection is actually performed

files: pbx.cpp

products: all with PBX

risks: None

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

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

Solution: Interwork all FTY element in SIG_ALERT in Dectmaster

Files: dectmaster.cpp

Products affected: Dect devices

Risk: No risk

357 - call-forward was executed on pickup calls

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

solution: Do not execute cfu in this case

files: pbx.cpp

products: all with pbx

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

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

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

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

Files: sip.cpp

Products affected: All gateway devices

Risk: No risk

342 - coding of H.323 EFC wrong

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

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

files: h323sig.cpp, h323ras.cpp

products: all

risks: Minimal risk of collateral damage

390 - Conference Interface duplicate release

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

Solution: Implementation fixed.

Files: conference_sig.h conference_sig.cpp.

Products affected: All devices with Conference Interface.

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

370 - Dect GUI user list search

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

Solution: URL decoding added.

Files: dectusers.cpp.

Products affected: IP4001, IP1201, IP1200.

Risk: Low.

385 - DECT MSF login

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

Solution: Function signature changed.

Files: dectmsf.h, dectmsf.cpp.

Products affected: IP1200.

Risk: Low.

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

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

Solution: Condition removed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Low.

416 - DECT Standby-Master Trap

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

Solution: Fixed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Very low risk of collateral damage.

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

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

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

Files: sip.cpp siptrans.cpp

Products affected: All

Risk: No risk

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

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

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

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

Products affected: All devices

Risk: No risk

363 - EDSS1 divertingLegInformation2 not decoded

Ticket #38267. Description: Interworking for EDSS1 divertingLegInformation2

Solution: decode supplementary service facility divertingLegInformation2

Products affected: all gateways

Files: g950.cpp

Risk: none

374 - Empty facility messages sent to non-innovaphone equipment

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

solution: Don't send these messages

files: h323sig.cpp

products: all

risk: Very small risk of collateral damage

375 - Fax/Modem relay with G711u does not work

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

solution: Fix modem bypass payloadtype

files: ac_dsp3.cpp

products: ip22 ip24 ip28 ip302 ip305

risk: Very small risk of collateral damage

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

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

solution: First seperate name/number, then do urldecode

files: gk.cpp

products: all with Gateway

risks: None

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

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

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

files: h323ras.cpp, h323.h

products: all

risk: Minimal risk of collateral damage

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

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

solution: Initialize local address in this case.

files: h323sig.cpp

products: all

risks: Small risk of collateral damage

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

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

solution: Coding fixed

files: h450.cpp

products: all

risks: None

394 - Improve pseudo random number quality on IP6000 and IP4001

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

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

files: ip6000.cpp, ip4001.cpp

products: IP6000, IP4001

risks: No risk

352 - Inbound calls on ENUM/SIP interfaces were rejected

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

Solution: Use fix mask 0.0.0.0 to accept inbound calls.

Files: sip.cpp

Products affected: All gateway devices

Risk: No risk

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

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

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

Products affected: all phones

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

Risk: none

387 - Interop problem with SoundPoint IP 501

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

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

files: sip.cpp

products: All with SIP

risks: No risk.

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

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

solution: Ignore these MWI messges

files: dtmffty.cpp

products: all

risks: no risk

388 - IP110: cannot reach sent message screen

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

solution: fix in code

files: phone/list/phone_list_ui.cpp

products: IP110

risks: none

349 - IP150 Manufacturing: Allow to set default language

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

solution: add function to commandprocessor, flashman and cpu

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

products: all

risks: low

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

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

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

files: phone/user/phone_user.cpp

products: IP230, IP240

risks: none

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

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

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

files: relay.cpp

products: all with analog interfaces

risks: None

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

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

solution: fixed in firmware.

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

products: IP240, IP210

risks: unknown

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

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

solution: fix in code

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

products: IP72

risks: none

355 - Logging of Administration did show passwords

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

solution: Passwords replaced by '****'

files: command.cpp

products: all

risks: Minimal risk of collateral damage

361 - Loosing registration when SIP server changes its ip address

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

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

Files: sip.cpp sip.h

Products affected: All devices using SIP

Risk: Low

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

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

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

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

Products affected: All devices using SIP

Risk: Low

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

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

solution: Make remote mask configurable for SIP interfaces.

files: sip.cpp

products: All with SIP

risks: No risk

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

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

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

files: sip.cpp sip.h

products: all with SIP

risks:

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

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

fix: Handle the special scenarios

files: h323ch.cpp

products: all

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

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

solution: Free all memory in this case

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

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

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

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

Products affected: PBX devices

Files: sip.cpp

Risk: none

404 - missing ring voltage after few days uptime

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

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

Products affected: ip28 only

Risk: low

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

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

Solution: set the execution trigger.

Products affected: all

Files: update.cpp

Risk: none

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

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

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

Files: httpclient_i.cpp httpclient_i.h

Products affected: All PBX devices

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

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

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

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

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

products: all

risks: None

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

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

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

Products affected: all phones

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

Risk: minimal risk of collateral damage

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

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

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

Products affected: all analoue gateways except ip21

Risk: none

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

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

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

Products affected: all phones

Files: phone_dir_ui.cpp

Risk: low

340 - no ringing voltage after few days uptime

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

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

files: si3241_drv.cpp si3241_drv.h

products: ip28

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

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

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

solution: Media negotiation fixed for this case

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

products: all

risks: Minimal risk of collateral damage

408 - OEM specific broadcast message behavior

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

Solution: Condition for sending broadcast messages added.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

401 - OEM specific DECT connection messages

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

Solution: Implementation fixed.

Files: dectradio.h, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

402 - OEM specific Dect duplicate endpoint message option

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

Solution: Message option added.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

369 - OEM specific Dect endpoint idle display

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

Solution: Implementation fixed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

350 - OEM specific event handling for info messages

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

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

400 - OEM specific GUI redundant trunk state

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

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

365 - OEM specific GUI trunk state

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

Solution: Implementation fixed.

Files: dectmaster.h.

Products affected: IP4001, IP1201.

Risk: Minimal. Only OEM specific.

382 - OEM specific location response message

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

Solution: Implementation fixed.

Files: dectmaster.cpp, dectradio.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

364 - OEM specific trunk down handling

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

Solution: Implementation fixed.

Files: dectmaster.cpp.

Products affected: IP4001, IP1201.

Risk: Low. Only OEM specific.

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

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

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

Products affected: all

Files: flash_firmware.cpp

Risk: none

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

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

solution: Use right destination address

files: pbx_xml.cpp

products: all with PBX

risks: Minimal risk of collateral damage

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

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

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

files: pbx.cpp

products: all with PBX

risks: Minimal risk of collateral damage

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

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

solution: Dial name in this situation

files: pbx_wait.cpp

products: all with PBX

risks: None

413 - PBX: External calls not released automatically anymore

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

solution: Automatic disconnect now implemented in the Trunk object

files: pbx_trunk.cpp, pbx_trunk.h

products: all with PBX

risks: Very low risk of collateral damage

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

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

solution: Limit reduced to 2s

files: pbx.cpp

products: all with PBX

risks: No risk

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

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

solution: Fix code so that checking of internal number works

files: pbx.cpp

products: all with PBX

risks: None

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

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

solution: Display error if no name is configured for node

files: pbx_admin.cpp

products: all with PBX

risks: None

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

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

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

files: app_call.cpp

products: all phones

risks: Very low risk of collateral damage

386 - port init confuses

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

Solution: Solve this dependency

Files: si3241_drv.cpp

Products affected: ip28 only

Risk: low

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

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

Solution: check for null pointer

Products affected: all pbx devices

Files: pbx_dirsearch.cpp, pbx_dtmf.cpp

Risk: none

366 - PPP config shall exclude PRI interfaces without HDLC capability

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

Solution: check HDLC/CHANNELS >= 1

Products affected: all

Files: ip_config.cpp

Risk: none

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

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

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

Files: sip.cpp siptrans.cpp

Products affected: All

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

411 - sporadic assert in http.cpp

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

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

files: http.cpp
products: all

risks: low

412 - sporadic fifo problem on ac_dsp3

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

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

Products affected: ip22 ip24 ip28 ip302 ip305

Files: ac_dsp3.cpp

Risk: low

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

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

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

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

Products affected: all

Risk: Low.

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

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

solution: Buffer size adjusted

files: command.cpp, command.h

products: all

risks: none

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

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

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

files: sdpmsg.cpp

products: All with SIP

risks: May trouble other equipment

399 - T38 NAT Problem

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

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

files: ac_dsp3.cpp

products: ip22 ip24 ip28 ip302 ip305
risks: low

405 - T38 NAT Problem

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

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

files: ac_fax2.cpp ac_fax2.h

products: ip800 ip6000
risks: low

410 - too many 'No Media Data Received' events

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

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

files: medialib.h, media.cpp

products: all

risks: None

377 - Trap in SIP message construction

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

solution: Initialize unused members to zero

files: sipmsg.cpp

products: all SIP

348 - Trap when disconnecting while blind transfer pending

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

Solution: Fix handling of onhook at dect handset

Files: dectradio.cpp

Products affected: All Dect devices

Risk: Low

339 - Trap while processing SUBSCRIBE(reg)

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

Solution: Fixed

Files: sip.cpp

Products affected: All PBX devices

Risk: No risk

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

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

solution: set fty_event_innovaphone_message.next to '0'

files: pbx_vm.cpp

products: All PBX products

risks: No risk

372 - Upload GUI css oem change

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

Solution: HTML changed.

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

Products affected: All products.

Risk: Low.

391 - VM trace messages without trace flag set

Ticket #38857. problem: Voicemail trace messages not suppressable

solution: suppress trace outputs

files: pbx_vm.cpp, vm_script_if.cpp

products: All PBX products

risks: No risk

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

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

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

Products affected: all

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

Risk: none

V7 hotfix 5 (08-70300.14)

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

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

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

Files: sip.cpp

Products affected: PBX

Risk: Collateral damage on media negotiation

437 - Better Diagnostics for Free Error restarts

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

solution: Trace last free

files: os.cpp

products: all

risks: None

438 - BYE was not sent when DNS resolving failed

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

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

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

425 - Damaged authorization header in ACK

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

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

Files: siptrans.cpp sip.cpp

Products affected: All SIP devices

Risk: Authorization problems

429 - DECT null pointer trap

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

Solution: Null pointer check added.

Files: dectradio.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

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

files: config.h

products: all

risks: None

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

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

Solution: Correct, add missing entries

Products affected: ip28

Risk: none

424 - Enbloc dialing fix for DECT

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

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

Files: dtmffty.cpp.

Products affected: All products.

Risk: Minimal risk of collateral damage.

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

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

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

Files: httpclient_config.cpp

Products affected: All

Risk: Low

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

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

solution: send an IDLE command before RING.

files: keys_gen.cpp

products: all Phones with an active GN9120

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

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

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

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

Files: nat_h323.cpp

Products affected: All routing devices doing H.323 NAT

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

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

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

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

Files: siptrans.cpp sip.cpp

Products affected: All SIP devices

Risk: No risk.

417 - Missing attribute "entity" in dialog information XML

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

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

files: sip_dialog_info.cpp

products: All PBX with SIP

risks: None

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

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

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

files: h323ch.cpp

products: all

risks: Small risk of collateral damage

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

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

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

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

products: all

risk: Minimal, not used except for OEM

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

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

Solution: Check for "received" parameter.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

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

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

solution: User interface fixed to allow 8 only

files: pbx_edit_cfs.xsl

products: all with PBX

risks: None

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

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

Solution: Do not send CLIP multiple times.

Products affected: ip28 only

Risk: low

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

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

solution: Turn off RTP when receiving pause

files: h323ch.cpp

products: all

risks: Low risk of collateral damage

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

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

solution: dupilcate free of memory removed

files: q950.cpp

products: all with ISDN interfaces

risks: None

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

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

Solution: remove file_get instance after application confirms the close.

Files: httpclient_i.cpp

Products affected: All

Risk: Low

419 - Windows Mobile 6.1 SIP Client cannot cancel a call

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

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

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk

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

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

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

Files: siptrans.cpp

Products affected: All SIP devices

Risk: No risk.

V7 hotfix 6 (09-70300.16)

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

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

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

Files: ldap*

Products: PBX, DECT Products

Risk: No risk.

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

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

solution: add the commands

files: command.cpp

products: all

risks: None

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

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

solution: Fix initialization

files: h323sig.cpp

products: all

risks: None

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

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

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

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

products: all phones

risks: None

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

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

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

files: fat32.cpp

products: all devices with cf card

risks: minor, as this constelation is extremly rare

509 - Bad Noise Level in RTP Comfort Noise Packets

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

Solution: Change noise level value into "127".

Files: media.cpp

Products: PBX voice mail

Risk: No risk.

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

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

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

Files: ldap/*

Products affected: All PBX, Dect Products

Risk: No risk.

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

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

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

files: app_cfg.cpp app_cfg.h app_disp.cpp

products: all phones

risks: None

525 - Config Template Objects not replicated to slave PBXs

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

solution: Don't set node/loc attributes

files: pbx_edit_config.xsl

products: All with PBX

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

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

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

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

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

products: all

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

497 - DGPN Mapping Produced Nonsense Numbers

Ticket #41102. Problem: DGPN mapping produced nonsense numbers

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

Files: gk.cpp

Products affected: All Gateway products

Risk: No risk.

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

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

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

files: phonesig.cpp

products: all phones

risks: None

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

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

solution: Do not execute CFU for calls from unknown registrations

files: pbx.cpp

products: all with PBX

risks: None

479 - DTMF detection did not work randomly

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

solution: Initialize all parameters

files: ac_dsp2.cpp

products: IP6000, IP800

risks: none

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

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

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

files: relay.cpp

products: all gateway products

risk: Small risk of collateral damage

480 - Echo canceling sometimes not active on IP72

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

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

products: ip220,ip72

risks: Low risk of collateral damage

493 - Forward last diverting information (not the first)

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

Solution: Map and forward last diverting information.

Files: relay.cpp

Products: All Gateway devices

Risk:

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

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

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

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

products: all PBX devices

risks: minor

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

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

solution: Fix media neg.

files: h323ch.cpp

products: all

risks: None

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

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

solution: fix in code

files: httpclient_i.cpp

products: all

risks: None

449 - ICMP Address mask requests shall be ignored

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

solution: ignore ICMP Address mask requests

files: ipproc.cpp

products: all

risks: None

453 - icp traps with after dialed digits

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

solution: changed digit handling

files: pbx_icp.cpp/h

products: all PBX devices

risks: none

499 - immediate diversion activation after receiving icp activation code

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

solution: already activate diversion after receiving activation call

files: pbx_icp.cpp

products: all devices with pbx

risks: no

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

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

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

Files: sip.cpp dectmaster.cpp

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

521 - IP-DECT debug output

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

Solution: Option added.

Files: dectlocalusers.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

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

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

Solution: Option added.

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

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

529 - IP-DECT delayed user location registrations for trunks

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

Solution: Function changed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: All OEM DECT devices.

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

457 - IP-DECT GUI radio list sorting by Id

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

Solution: Feature added.

Files: dectmaster_radios.xsl (OEM).

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

459 - IP-DECT GUI user list sorting

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

Solution: Feature added.

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

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

solution: Code fixed

files: dectusers.cpp

products: all ip-dect

risks: Severe risk of collateral damage

465 - IP-DECT Master handover canceled statistic

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

Solution: Fixed.

Files: dectmaster.cpp

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

466 - IP-DECT monitor interface for OEM modules

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

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

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

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

470 - IP-DECT Null pointer trap

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

Solution: Null pointer check added.

Files: dectradio.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

Solution: Null pointer check added.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

Solution: Null pointer check added.

Files: dectusers.cpp.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

Solution: Function fixed.

Files: dectmobmaster.h, dectmobmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

505 - IP-DECT OEM data calls unavailable

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

Solution: Call accept condition changed.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

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

485 - IP-DECT OEM module debug output trap

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

Solution: Function changed.

Files: dectmobmaster.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

504 - IP-DECT OEM module Mobmaster missing endpoints

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

Solution: Clean cache function fixed.

Files: dectmobmaster.cpp.

Products affected: All OEM DECT devices.

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

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

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

Solution: Command added, obsolete command removed.

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

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

456 - IP-DECT OEM specific idle display

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

Solution: Fixed.

Files: dectmaster.cpp.

Products affected: All DECT devices.

Risk: No risk of collateral damage, OEM only.

498 - IP-DECT OEM trunk state after config change

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

Solution: Initial trunk state fixed.

Files: dectmaster.h, dectmaster.cpp.

Products affected: All OEM DECT devices.

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

492 - IP-DECT OEM trunk status inquiry

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

Solution: Function fixed.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: Minimal risk of collateral damage.

528 - IP-DECT trunk down events

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

Solution: Diagnose events added.

Files: dectmaster.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage.

423 - IP-DECT: Allow overlap numbers

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

Solution: Allow overlap numbers.

Files: dectusers.cpp.

Products: All IP-DECT devices.

Risks: Low risk of collateral damage.

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

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

Solution: Fixed.

Files: dectunknown.xsl.

Products affected: All DECT devices.

Risk: Minimal risk of collateral damage.

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

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

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

Files: ldap/*

Products affected: All PBX, Dect Products

Risk: No risk.

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

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

Solution: Fix Asn.1 encoding

Files: ldapsrv.cpp, ldapdir.cpp

Products affected: All PBX products

Risk: none

495 - LDAP-Expert-View with unknown Login

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

Solution: switch to mod_cmd_login.xml

Files: ldap/flashdirui*.xsl

Products affected: All PBX, Dect Products

Risk: No risk.

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

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

solution: Handle this case to delete the call object

files: h323sig.h, h323_tbl.tbl

products: all

risks: None

500 - Misrouting of GRE packets

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

Solution: Check local address of socket object.

Files: ipproc.cpp

Products: All NAT devices

Risk: No risk.

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

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

solution: expand #n

files: update.cpp

products: all

risks: None

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

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

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

Files: sip.h/cpp

Products: All SIP devices

Risk: No risk.

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

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

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

Files: sip.cpp/h

Products: All SIP devices

Risk: Collateral damage on handling of REGISTER responses.

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

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

solution: Fix media negotiation

files: h323ch.cpp

products: all

risks: small risk of collateral damage

220 - no ringing voltage after few days uptime

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

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

Products affected: ip28

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

515 - Number/Name update during call did not work

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

Solution: Fix parsing of multiple Supported headers.

Files: sipmsg.h

Products: All SIP devices

Risk: No risk.

447 - OEM specific 'scfg' command output

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

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

files: update.cpp

products: all

risks: None

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

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

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

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

products: all

risks: Minimal.

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

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

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

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

Products affected: All PBX with VM object

Risk: No risk.

526 - Partner key without pickup functionality

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

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

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

products: all phones

risks: None

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

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

solution: Generate CDR for calls with media only

files: pbx.cpp

products: All with PBX

risks: None

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

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

solution: Loop detection fixed

files: pbx.cpp

products: all with pbx

risks: Small risk of collateral damage

458 - PBX replication timeouts too short

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

solution: Increase timeouts to normal values

files: pbx.h

products: all with PBX

risks: None

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

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

solution: Provide the old info if old WSDL is used

files: pbx_xml.cpp

products: all with PBX

risks: Small risk of collateral damage

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

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

solution: Bug fixed

files: pbx_trunk.cpp

products: all with PBX

risks: Small risk of collateral damage

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

Ticket #41432. problem: The PBX CDRs did not show the destination to which calls are forwarded by Waiting with DTMF dialing

solution: Add more information to CDR

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

products: All with PBX

risks: Minimal

520 - PBX: Trap when changing filters with 'next'

Ticket #41875. problem: When chaining filters with 'next' a trap could happen when these filters were changed

solution: Fix merged from v8

files: pbx.cpp

products: All with PBX

risks: Minimal, fix very well tested in v8 already

514 - Portuguese translation not complete

Ticket #41660. problem: portugeuese translation not complete

solution: fixed phonetext

files: phone/txt/phonetxt.base phone/txt/phonetxt.cpp

products: phones

risks: none

502 - Potential Trap in RTP if error logging happens during call clearing

Ticket #41287. problem: If an RTP error log is generated when the RTP entity is already closing a NULL pointer access trap can happen

solution: Check for RTP closing before creating the event

files: media.cpp

products: all

risks: None

469 - Problem when CFNR should result in same phone ringing again together with busy on 1 call

Ticket #40268. problem: If a user had set busy on 1 call a call forward which should have resulted in ringing the same phone again (e.g. to a broadcast group including this user) the phone stopped ringing

solution: Counting of active calls fixed

files: pbx.cpp

products: all with PBX

risk: Small risk of collateral damage

503 - PROGRESS with in-band-info not sent on ISDN

Ticket #41288. problem: A PROGRESS message with in-band-info was suppressed even in case no progress indicator was sent before (in SETUP-ACK, CALL-PROC). This caused in-band tones not be available in such situation

solution: Better check when to suppress PROGRESS

files: q931.cpp, q931.h

products: All with ISDN interfaces

risk: Some risk of collateral damage

501 - re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive"

Ticket #41226. Problem: re-INVITE(sendrecv) was answered with 200/OK(inactive) if the initial INVITE was "inactive".

Solution: Honor media mode change.

Files: sip.cpp

Products: All SIP devices

Risk: No risk.

462 - Re-transmission of INVITE after CANCEL has been send

Ticket #40151. Problem: If 407 for INVITE arrives after CANCEL has been sent, the INVITE was re-transmitted with autorization header.

Solution: Ignore 407 response after CANCEL has been sent.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

467 - RTP timestamp jumps during hold/retrieve/transfer

Ticket #40213. Problem: RTP timestamp jumps during hold/retrieve/transfer. On media-relay scenarios this may confuse the remote side and result into one-way-audio.

Solution: Keep RTP timestamp progressively on media-relay scenarios.

Files: medialib.h media.cpp media_fwd.h/cpp

Products affected: All gateway devices

Risk: No risk.

519 - sectored firmware upload fails when the first firmware chunk sent to flashmanager is shorter 1000 byte

Ticket #41836. problem: at the beginning of an upload the flasmanager gathers the firmware chunks until at least 1000 byte are available. Then the header is checked and if valid write_firmware() is called to write the packet to flash. A 'start' flag indicates if it is the first call and thus flash segments have to be reserved. This flag is copied from the current chunk(event) but is TRUE in the first event only.

solution: remember start condition separately and clear after first call to write_firmware()

files: flashman.cpp, flashman.h

products: all

risks: None

476 - SOAP monitored call to busy on ... busy endpoint was terminated with rel_com instead of disc

Ticket #40490. problem: A call to a busy on ... calls busy endpoint was disconnected with RELEASE-COMPLETE even if monitored by SOAP. This results in SOAP (TAPI) not being able to disconnect the call to turn off the busy signal

solution: Use DISC to clear such a call

files: pbx.cpp

products: all with PBX

risk: None

446 - sporadic HTTP_REQUEST Assertion

Ticket #39783. problem: HTTP_REQUEST Assertion: no servlet occurs if lots of logging is done to a box

solution: delete servlet after last send to avoid race condition with next http request
files: http.cpp

products: all

risks: Low risk of collateral damage

506 - src-url not transmitted accross PBXs

Ticket #41344. problem: The URL Parameter configured at a user is sent with calls of this user. It is put into CDRs by the gateway and can be used for billing purposes. If the call was received from another PBX, the src-url was not forwarded.

solution: Forward src-url

files: pbx.cpp

products: All with PBX

risks: None

441 - The message indicating an active Automatic Redial disappears after first redial attempt

Ticket #39645. problem: When Automatic Redial is activated the text "Redial" is displayed in the message line. This text disappears after the first redial attempt and thus the user may easy forget to stop it when leaving it's place. Further each redial attempt is listed under "Active Recalls" and thus it's not clear what should be be cancelled.

solution: fix in code

files: app_cc.cpp app_ctl.cpp app_ctl.h app_disp.cpp forms.h forms_gen.cpp forms_ip72.cpp phone_list.cpp

products: all phones

risks: None

478 - TLS could trap when sending big packets

Ticket #40609. Problem: There was a bug in the packet re-fragmentation in the TLS layer that could lead to a trap when sending big packets.

Solution: Fix fragmentation mechanism

Files: tls.cpp

Products affected: All devices

Risk: No risk.

475 - TLS socket did not send up remaining data after TCP connection shutdown

Ticket #40482. Problem: In some cases the TLS socket did not send all remaining data up after the remote endpoint closed the TCP connection. This happened if the HTTP-Client got TLS fragments bigger than 2000 byes followed directly by a FIN.

Solution: Delay socket shutdown with the HTTP client until all data has been delivered.

Files: tls.cpp

Products affected: All devices

Risk: Small risk of damage with other TLS applications

473 - transparent recording of external calls must be perfomed for inbound and outbound calls

Ticket #40308. problem: with "Configuration/Registration n/Recording/Mode" = 'transparent' and "Configuration/Registration n/Recording/External Calls Only" = 'checked' only inbound external calls were recorded. if an outbound call is an external call is indicated in the numbering plan of the 'connected number' and this info was not passed to phoneapp.

solution: update numbering plan of remote party with the 'connected number' info, check for external call at connect time

files: phonesig.cpp, app_call.cpp

products: all phones

risks: None

511 - Trap in SIP stack due to misalignment of data struct

Ticket #41483. Problem: Trap in SIP stack due to misalignment of data struct.

Solution: Fixed alignment.

Files: siptrans.cpp

Products: All SIP devices

Risk: No risk.

468 - Trap in SIP stack on incoming calls

Ticket #40247. Problem: Trap in SIP stack on incoming calls.

Solution: Fix.

Files: siptrans.h

Products affected: All SIP devices

Risk: No risk.

443 - Trap when the http connection timeout is reached immediately after the connection is dropped from remote

Ticket #39686. problem: When a http socket connection was dropped from remote and and the disconnect timer fired before the http_request object was destructed a shutdown was sent to the already closed socket.

solution: fix in code

files: http.cpp

products: all

risks: None

518 - Trap when using SIP/TLS through NAT

Ticket #41810. Problem: Trap when using SIP/TLS through NAT.

Solution: Do not call send_nat_keepalive() in case of connection oriented transport.

Files: sip.cpp

Products: All SIP devices

Risk: No risk.

512 - Use To header for routing of incoming MESSAGE requests

Ticket #41485. Problem: MESSAGE routing through Gateway did not work properly.

Solution: Use To header for routing of incoming MESSAGE requests.

Files: sip.cpp

Products: PBXs and Gateways

Risk: No risk.

513 - VM. Escaping missing for directory names and CGPNs encoded in file names

Ticket #41642. problem:
-Voicebox directories for usernames containing '/','*' weren't processable.
-Filenames emerging during <pbx-record> and carrying a CGPN (separated by a hyphen'-') that contains '*','#' weren't processable.

solution:
-Internally add more escaping for user directories.
-Internally apply escaping for the CGPN name part when processing <pbx-record>
-Internally apply unescaping for the CGPN name part when processing <store-split>

files: vm_script_if.cpp

products: All with PBX

risks: All private scripts with a '/' in the "root"-attribute of one of the "<store-..>"-elements must be adapted a'la:
modify
<store-del root="one/two/" name="test.txt"/>
into
<store-del root="" name="one/two/test.txt"/>

451 - Wrong "direction" attribute in dialog-info (group indications)

Ticket #39983. problem: Attribute "direction" has always value "initiator". Even if inbound calls are reported. In result call-pickup did not work.

solution: Fix the "direction" attribute.

files: sip.cpp/h sip_dialog_info.cpp/h

products: all PBX devices using SIP

risks: None

508 - Wrong redirecting number on retry of recall

Ticket #41357. problem: A recall after a failed transfer should show the transfer destination as redirecting number. If the recall failed because of the transferor was busy again, this was not the case with the retry of the recall.

solution: Send correct redirecting number

files: pbx.cpp pbx.h

products: All with PBX

risks: Small risk of collateral damage

V7 Hotfix 7 (09-70300.17)

537 - checkmark "Phone/Preferences/Keep Calling Party Info on Pickup Key" cannot be cleared

Ticket #42257. problem: the checkmark could be set but not cleared.

solution: fix in code

files: phone_pref.xsl

products: all phones

risks: None

536 - v7hf7: Voicemail fails to prompt stored messages

Ticket #42216. problem: Applies to v7hf6. With the innovaphone voice mail, previously stored messages can´t be listened to any more. Also, the recording based on voice mail does not work any more.

solution: Exclude '/' character from name conversion

files: vm_script_if.cpp

products: All with PBX

risks:

533 - when transparent recording for external calls was configured, internal calls to voice mail were recorded too

Ticket #42180. problem: the type of an outbound call is not known at the phone until the call is connected. usually the connect message from the PBX provides this info in the numbering plan of the connected party number. in calls to the voice mail connected party number is not provided and this was misinterpreted as external call.

solution: assume internal call if connected party number is not provided

files: phonesig.cpp

products: all phones

risks: None

V7 Hotfix 8 (09-70300.19)

571 - "phys" attribute ignored for partial replication to slave

Ticket #43623. problem: LDAP objects with attribute "phys" and content "[pbx]", where "[pbx]" equals Configuration/LDAP/Replicator/PBX-Name, weren't replicated to the slave.

solution: Internally derived LDAP filter now contains a term for the "phys" attribute.

files: ldaprep.cpp

products: all PBX products

risks: none

564 - A registered SIP IF gets CDPN from To-URI (not Request-URI)

Ticket #43324. problem: A registered SIP interface gets CDPN from To-URI. Not from Request-URI since Request-URI is always the called UA's Contact-URI used in REGISTER. (But not at provider "voip.planetel.biz")

solution: Config file option "/get-cdpn-from-request-uri".

files: sip.cpp/h

products: All with SIP

risks: No risk.

567 - cf card recognized, but partion table ignored

Ticket #43386. problem: boot sector of a cf card was recognized, but partion table ignored.

solution: firstly check partion table existance and try to validate it

files: fat32.cpp

products: all products with cf card

risks: small chance of unusual boot sectors, which could cause a false cf card recognition

557 - Failed t38 negotiation in SIP

Ticket #43056. problem: Inbound SIP call. Switch-over to t38 from internal to external. After 200/OK with t38 answer from external, the call was terminated with Reason code 88 "Incompatible destination".

solution: Fix handling of CHANNEL_INIT.

files: sip.cpp

products: All with SIP

risks: Damage of other scenarios of media negotiation.

545 - fine grained locking bits for phone-settings and user-list-actions

Ticket #42595. problem: fine grained locking bits for phone-settings and user-list-actions added. now following functions from phone menu can be disabled:
1) Menu -> Phone Setup -> Lock Phone
Menu -> Phone Setup -> Change PIN
Menu -> Phone Setup -> Direct Dial
2) Menu -> User List -> User(1-6) -> Activate
Menu -> user List -> User (1-6) Function Keys

solution: implemented PHONE_LOCK_PHONE_SETUP and PHONE_LOCK_USER_LIST bits (see wiki Reference7:Fine_grained_function_locking)

files: phone/phone_config.h phone/app/app_gui.cpp phone/user/phone_user_ui.cpp

products: all telephones

risks: none

551 - Firmware upload fails in ip1201 and ip4001 if a second brower instance gets the info screen.

Ticket #42684. Problem: Flash access conflict, Firmware upload fails in ip1201 and ip4001 if a second brower instance reads the production_data (e.g. from the info screen).

Solution: use a copy of the production_data

Files: box.cpp.

Products affected: ip4001 ip1201.

Risk: Low risk of collateral damage.

541 - Group Indications should show changed remote number

Ticket #42420. problem: New Feature needed: Partner key should not only show the connected number but should also update this number if remote number changes, because of transfer.

solution: Group Indications for the update sent

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

products: all with PBX

risks: Risk of collateral damage in the area of Group Indications and SOAP

568 - GWn Interfaces could not be selected as source for automatic generated routes

Ticket #43428. problem: For physical interfaces which are registered, routes are generated automatically. These routes can be modified, e.g. additional source interfaces can be configured. GWx interfaces were excluded from this

solution: Allow GWx interfaces as source as well

files: relay_edit_route.xsl

products: All with Gateway

risks: None

553 - H.323 media reneg. from SRTP-EFC to non-EFC does not work

Ticket #42856. problem: An EFC-SRTP endpoint calls an object with two registrations, first another SRTP-EFC endpoint and second a non-EFC endpoint. With the first endpoint SRTP is negotiated during alert. When the second endpoint answers the call non-SRTP is negotiated, but the calling endpoint still sends SRTP -> no media

solution: Turn off SRTP if renegotiation to non-SRTP happens

files: h323ch.cpp

products: all

risks: None

543 - In the Terminal Capability Set coder g711A shall preceede g711u

Ticket #42503. problem: If a device providing only g711A and g711u (in that sequence) in its TCS connects to our devices the negotiated coder may be either A-law or u-law. In Europe A-law always should be the preferred coder

solution: reorder the coder tables returned by DSP drivers on a get_caps() request.

files: ac_dsp.cpp, ac_dsp2.cpp, ac_dsp3.cpp, omap_dsp.cpp, inca_dsp.cpp

products: all

risks: Minimal

560 - Incoming INVITE is rejected with "603 Decline"

Ticket #43121. problem: SIP stack rejects incoming INVITE with "603 Decline" without telling Gateway application (no LOGs).

solution: On interface selection ignore interfaces not listening.

files: siptrans.cpp

products: All with SIP interfaces without registration

risks: No risk.

550 - IP-DECT display update after fast blind call transfer

Ticket #42672. Problem: Handset display is not updated after blind call transfer in early call state.

Solution: Event handling for early call state added.

Files: dectfty.h, dectfty.cpp, dectmaster.cpp.

Products affected: All DECT devices.

Risk: Low risk of collateral damage.

547 - IP-DECT New Radio BMC firmware version PCS05Ag

Ticket #42626. Problem: Newer Radio BMC firmware.

Solution: BMC firmware update.

Files: fp_1g8_ip_1200.bin.

Products affected: All OEM DECT devices.

Risk: Third party firmware.

539 - IP-DECT OEM trap with locations reference

Ticket #42280. Problem: Trap with usage of OEM locations.

Solution: Function changed.

Files: dectmaster_if.h, dectusers.cpp.

Products affected: All OEM DECT devices.

Risk: No risk of collateral damage. OEM devices only.

556 - IP-DECT OEM trunk facility messages

Ticket #42931. Problem: Different TCP sessions are needed for different OEM message types.

Solution: Additional trunk signaling object added. Function calls changed.

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

Products affected: All OEM DECT devices.

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

575 - IP-DECT option check called party number in Dectmaster

Ticket #44074. problem: For some system configurations it is necessary to reject calls if the called party number doesn't match with the number of the assigned user of the used PBX registration.

solution: New option to check the called party number for OEM devices.

files: dectmaster.h, dectmaster.cpp.

products affected: All OEM DECT devices.

risk: No risk of collateral damage. OEM devices only.

563 - IP3000 Wizard removes /nt config for PRI2

Ticket #43292. problem: On the IP3000 PRI2 interface is preconfigured for NT. By excuting the wizard this configuration is lost

solution: Conserve /nt config on PRI2-L1

files: ip3000/config_wizard.txt

products: IP3000

risks: None

542 - IP72: alarms originating from IP72 carry wrong & uninitialized netbios address IP72-00-00-00

Ticket #42483. problem: alarms originating from IP72 carry wrong & uninitialized netbios address IP72-00-00-00

solution: fixed module start order (init_parameters before mac used)

files: config/platform.h

products: IP72

risks: none

569 - ISDN interop problem with Cisco Router with unrestricted digital information calls

Ticket #43445. problem: With ISDN calls from an interface in NT mode a Progress Indicator was sent indicating 'Originating Address is non-ISDN'. This caused a Cisco Router to reject UDI calls (after sending CALL-PROC and ALERT!?)

solution: Do not send this PI in case of UDI calls

files: q931.cpp

products: All with ISDN

risks: Minimal

549 - memory leak after flash upload of invalid firmware files

Ticket #42669. problem: flash upload of a firmware file < 1000 byte or a larger file with an invalid header left back the complete file in memory.

solution: fix in code

files: flashman.cpp

products: all

risks: Small risc of collateral damage

558 - PBX obtaining licenses from master, wrong counting

Ticket #43093. problem: If a PBX object was changed, which was used by a slave which obtained licenses from the master, the usage of this slave was added again to the total usage

solution: Do correct cleanup when changing the configuration of a PBX object

files: pbx.cpp, inno_lic.cpp

products: all with PBX

risks: very low risk of collateral damage

559 - PBX use cause "outgoing calls barred" for calls rejected because of a filter

Ticket #43095. problem: The cause "no route to destination" was used for calls rejected because of filters. This did not express very well what was going on.

solution: Use "outgoing calls barred" instead

files: pbx.cpp

products: all with pbx

risks: None

530 - PBX-SOAP: Number update missing for overlap dialing

Ticket #42116. problem: On overlap dialing no update was sent to the monitoring application but only later with e.g. Alert. This way the application could not get the original dialed number if a call-forwarding was executed

solution: Send update with each dialed digit (as it was in v6)

files: pbx.cpp

products: all with PBX

risks: None

532 - PBX: Direct call from secretary to exec on slave did not work if call routed thru master

Ticket #42142. problem: On a exec configured on a slave PBX a call from a scretary to the exec could be routed thru the master. This could happen for example if the physical location of the secretary was in fact somewhere else. In this case the call from secretary to master was not allowed.

solution: Check to determin if call is in fact from the secretary fixed

files: pbx_exec.cpp

products: All with PBX

risks: Almost none

535 - PBX: External calls to users with 'Reject external Calls' should be rejeceted with 'Unassigned Number'

Ticket #42195. problem: External calls to PBX objects with 'Reject external calls' were rejected with cause 'Call Rejected' which reveals that the number exists, which may be more then wanted. On the other hand with 'Unassigned Number', the invalid number destination can be used in the trunk object.

solution: Use 'Unassigned Number'

files: pbx.cpp

products: All with PBX

risks: Could be that somebody needs 'Call Rejected' for some reason

544 - Pending Recalls are included only in combined call list but not in inbound call list

Ticket #42571. problem: the source of pending recalls indicated on the idle screen could not be determined by simply pressing the R-key and checking the inbound call list.

solution: fix the list item selection mask in R-key handler and call lists menu

files: app_ctl.cpp, phone_list_ui.cpp

products: all phones

risks: None

574 - Permanent reboot after hardware reset with fixed IP address due to Watchdog Timer.

Ticket #43953. Timer registers are null after a hardware reset and the Watchdog Timer runs out. The problem is that the interrupts are enabled just before the timers
are set. Some interrupts arrive and to serve them takes longer than 2 seconds.
When DHCP is used the PBX will be started later and not during this critical period and after a software reset the timer registers are not resetted and therefore the watchdog timer is triggered.

Solution: Init the Timer Registers before the Interrupts are enabled.

files: ip6000.cpp

546 - Pickup key disappears when a "Short Name (H323ID)" longer than a display line should be displayed

Ticket #42597. problem: if "Administration/Phone/Preferences/Display Name on Pickup/Partner Key" is checked, the configured "Short Name (H323ID)" is displayed instead of the Number. a name longer than than a display line was truncated to 0 and thus the key label was not displayed.

solution: truncate names to size of display line.

files: app_disp.cpp

products: all phones

risks: None

562 - Problem configuring public compact flash access

Ticket #43274. problem: Lots of entries or long paths are truncated.

solution: More buffer space.

files: http.cpp

products: All devices with CF card.

risks: No risk.

534 - Problems with Number display in PBX config with escapes

Ticket #42189. problem: If escapes are configured numbers displayed for the picking up endpoint, the diverted-to endpoint (leg1) and for a number configured with "Send Number" contained escapes, which were not correct

solution: Handle escapes better

files: pbx.cpp

products: All with PBX

risks: Some risk that other numbers are not displayed correctly

555 - Redirection from alternate PBX (standby) should not be used to determine physical location

Ticket #42916. problem: If primary PBX is not available and Registration is redirected from alternate, this should not be used as physical location

solution: Do not use alternate reditrection as physical location

files: h323sig.cpp

products: All

risks: Low risk of collateral damage

548 - reverse name resolution via external LDAP server fails if the number attribute list is terminated by a comma

Ticket #42640. problem: if "Configuration/Registration x/Directories/External LDAP Server/Number Attributes" is configured for example as "telephoneNumber:T,mobile:C,", the trailing comma results in a search pattern whithout an attribute name (=0049...) which confuses the server.

solution: fix in code

files: phone_dir.cpp

products: all phones

risks: None
checked in to 8.00,7.00,08-70300

554 - SIP: From tag changes when re-trying REGISTER with authorization

Ticket #42876. problem: Authorization did not work on "sipXecs/4.0.0 sipXecs/registry (Linux)".

solution: Reuse From tag when resending REGISTER with authorization.

files: sip.cpp/h

products: All with SIP

risks: No risk.

572 - SOAP UserConnect to a phone with a held and an alerting call does not retrieve the held call but opens the call completion menu

Ticket #43797. problem:
- A calls B, B answers the call
- A presses the R-key and calls C, C does not answer.
- a UserConnect directed to the held call (A to B) disconnects the alerting call (A to C) but instead to retrieve the held call the call completion menu is openend.

solution: fix in code

files: app_ctl.cpp

products: all phones

risks: None

552 - SOAP UserInfo: User was sometimes displayed as busy, even if free (Collateral damage from #40268)

Ticket #42789. problem: SOAP Applications (e.g. innovaphone switchboard) displayed users as busy even after all calls cleared

solution: Send missing status update again

files: pbx.cpp

products: all with PBX

risks: Very low risk of collateral damage

566 - src-url not forwarded in pbx and gateway

Ticket #43355. problem: A src-url received as part of the source address was not forwarded by the pbx or the gateway. This caused problems with billing.

solution: forward src-url

files: pbx.cpp, relay.cpp, relay.h

products: all

risks: Minimal

531 - Suppress Name/Number update after transfer for endpoints calling with CLIR

Ticket #42117. problem: On PBX internal calls with CLIR, the number was presented to the remote party after a call transfer

solution: Suppress ct_complete for CLIR numbers

files: pbx.cpp, pbx.h

products: All with PBX

risks: Small risk of collateral damage

540 - Take 200 response w/o Contact header for REGISTER as reject

Ticket #42414. problem: Some SIP server reject a failed authorization with "200 Auth Failed" w/o Contact header. This was interpreted as successful registration.

solution: Take it as 'rejected'.

files: sip.cpp

products: All with SIP

risks: No risk.

573 - tftp access with httpclient fails on some tftp servers if the file path starts with a /

Ticket #43830. Problem: tftp access with httpclient fails on some tftp servers if the file path starts with a /

Solution: remove starting /

Files: httpclient_i.cpp.

Products affected: all.

Risk: Low risk of collateral damage, starting / has no functio with tftp

561 - Toggling between active and held call with the R-R (or R-2) key sequence does not work sometimes

Ticket #43124. problem: if a phone receives message waiting indications for call completion requests pending for this phone and a call completion is cancelled, the phone thereafter may misinterpret the role of active and held call and thus for example the R-R key sequence toggling between those calls is ignored.

solution: fix in code

files: app_reg.cpp, app_call.cpp

products: all phones

risks: None

565 - Trailing slash not honored when processing unauthorized access list

Ticket #43342. problem: A trailing slash at an entry in "Public compact flash access" was not honored. Entries with a trailing slash shall grant access to the complete sub-tree. Entries without a trailing slash shall not.

solution: Honor trailing slash when checking for unauthorized access.

files: http.cpp

products: All devices with CF card

risks: Damage of CF access.

570 - Tunneled H.245 not handled while waiting for response to AdmissionRequest

Ticket #43509. problem: If tunneled H.245 where received while the Admission was still pending, no media was negotiated, because these H.245 messages where ignored.

solition: Handle Tunneled H.245 in this state

files: h323_tbl.tbl

products: all

risks: minor risk of collateral damage

538 - v7hf7: ringing frequency 50Hz instead of 25Hz

Ticket #42273. problem: All analogue gateways unse 50Hz AC fpr ringing signaling. 50Hz is common with conservative FXS designs using relays and AC derived from mains. Nevertheless the correct frequency is 25Hz.

solution: switch over to 25Hz ringing

files: si3210_drv.cpp, si3241_drv.cpp

products: ip22, ip24, ip25, ip302, ip28

risk:

V7 Hotfix10 (09-70300.21)

578 - Disconnect of incoming SIP call fails if ACK was not received yet

Ticket #45883. problem: Disconnect of incoming SIP call fails if ACK was not received yet. No BYE was send.

solution: Send BYE even before ACK is received.

files: sip.cpp

products: SIP devices

risks: No risk

577 - IP-DECT OEM LDAP timing

Ticket #45863. problem: Deleting of a duplicate endpoint takes too long if we wait for the LDAP response.

solution: System update before the LDAP response is added.

files: dectusers.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

579 - Problem with configuration of compact flash access

Ticket #45900. problem: Non-recursive directory access (w/o trailing slash) does not work. Directory listing is possible. File access is not possible.

solution: Fix access check.

files: http.cpp

products: All devices with CF card

risks: No risk

576 - SIP endpoint remains on hold after transfer (e.g. Bria)

Ticket #45856. problem: Under special timing conditions a SIP endpoint may remain on hold after transfer. Not switched from "sendonly" back to "sendrecv". Too fast hold/retrieve by PBX.

solution: Postpone retrieve event until SIP endpoint is ready to receive another re-INVITE.

files: sip.cpp

products: PBX serving SIP devices

risks: No risk

V7 Hotfix11 (09-70300.22)

602 - a ringing call moved by up-arrow key to upper display position disappeared when the active call was disconnected

Ticket #46582. problem: a ringing call which was moved to an upper display position by pressing the up-arrow key disappeared when the active call was disconnected. On a local disconnect the ringing call was invisible but remained pending in ringing state until released from remote. On a remote disconnect the ringing call was dropped.

solution: On a local disconnect the phone rings immediately. On a remote disconnect the phone rings after going on hook.

files: app_ctl.cpp, app_call.cpp

products: all phones

risks: None

588 - Configured ENUM Suffix got lost

Ticket #46439. problem: If for a ENUM GW a Suffix was configured (by use of !config change) it was deleted the next time the interface was edited

solution: Preserve suffix

files: gk.cpp, gk.h, relay_edit_voip.xsl

products: All gateway products

risks: Minimal

596 - Counters display does not work with IE8

Ticket #46508. problem: IE8 don't like img element without src attribute.

solution: replace <img> by <div>

files: log_count.xsl

products: All devices

risks: No risk

585 - Force HTTPS with non-standard ports

Ticket #46271. Problem: The HTTP redirect URI that is used for the "force HTTPS"-Feature does not include the HTTPS port number. Therefore it doesn't work if the HTTP or HTTPS port have been changed.

Solution: Include port number in HTTP redirect if one of the ports has been changed by the user.

Files: http.cpp

Products affected: All devices

Risk: Minimal

595 - H.323 Call to Waiting Queue with CFNR to another Waiting Queue with SIP Operator result in no media

Ticket #46484. problem: The media renegotiation of the H.323 call to the announcement with the SIP reverse media call to the operator fails

solution: Fix media-reneg. in H.323

files: channel.h, h323ch.cpp

products: all

risks: Minimal risk with media neg.

590 - H.323 Wrong Unexpected Message events

Ticket #46450. problem: The H.323 sometimes generates wrong Unexpecetd Message events.

solution: Disable Unexpected message events

files: h323sig.cpp

products: all

risks: None

592 - H.323: SRTP key was not forwarded to the caller in case of PBX to PBX calls with renegotiation

Ticket #46461. problem: On SRTP PBX to PBX calls with the call connected to some other media endpoint first (e.g. dialtone), the key was not forwarded to the caller. This caused garbled audio

solution: Forward SRTP key

files: h323ch.cpp

products: all

risk: Small risk of other media problem with SRTP

587 - HTML directory listing contains bad links

Ticket #46367. problem: In an HTML directory listing a link to a file who's name contains # (hash) does not work.

solution: Character escaping on links in HTML directory listings.

files: servlet_webdav.cpp

products: All devices with CF card

risks: No risk

600 - inband info received after disconnect of a connected call was lost in handsfree/headset mode because of automatic release

Ticket #46545. problem: some ISDN providers send inband info after disconnect even when the call was connected before. This info was lost in handsfree/headset mode because of automatic release after 2 seconds.

solution: on a disconnect with inband info the call is not automatically released. The call is terminated only on user request or when a release is received.

files: app_call.cpp

products: all phones

risks: None

584 - IP-DECT OEM Network region roaming

Ticket #46268. problem: New feature roaming between network regions for OEM products.

solution: Functionality added.

files: dectusers_if.h, dectusers.h, dectusers.cpp, dectmaster.h, dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

593 - IP-DECT OEM protocol DTMF through RTP

Ticket #46478. problem: For OEM protocol option 'allow DTMF through RTP' should be always off.

solution: Configuration update function fixed.

files: dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.

603 - IP-DECT OEM protocol new events

Ticket #46601. problem: New events are needed for OEM protocol.

solution: Events added.

files: fty.h, fty.cpp.

products affected: All devices.

risk: No risk of collateral damage. New events only for the OEM protocol.

582 - IP-DECT registration down reasons

Ticket #46189. problem: It is not possible to distinguish the reason why the radio-master connection fails.

solution: Now the master submits a reason in the ras down message and it is shown on the DECT radio GUI.

files: h323ras.cpp, voip.cpp, asn1_per.cpp, dectusers_if.h, dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectradio.xsl, dectradio.xsl(OEM).

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

604 - IP-DECT Sometimes user login fails

Ticket #46624. problem: Sometimes user login fails.

solution: CDPN buffer handling fixed.

files: dectusers.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

580 - IP-DECT: Not possible to initiate Call Completion if PBX user monitored by SOAP

Ticket #45940. problem: If a PBX user is monitored with SOAP (cau=true). A call is disconnected with DISC first and the REL. This caused the IP-DECT to disconnect the call to the handset too early, so no CC could be initiated

solution: Don't clear call from Master to Radio with the REL coming in from PBX

files: dtmffty.cpp

products: IP-DECT, Gateways

risks: Minimal

594 - IP150 stays logically offhook after a call initiated via WEB interface has been released

Ticket #46483. problem: calls created/accepted via WEB interface on an IP150 are started in handset mode because the IP150 has no speakerphone. The logical offhook state was not reset when such a call was released

solution: flag calls created/accepted via WEB interface and set logical onhook after release of such call

files: app_ctl.h, app_ctl.cpp, app_call.cpp

products: IP150

risks: None

586 - IP72: not transmitting continous timestamps in RTP data

Ticket #46281. problem: not transmitting continous timestamps in RTP data. Approx. the 10th RTP packet resets the timestamp to -1.

solution: fixed in DSP code.

files: box/omap/omap_dsp.cpp box/omap/omap_dsp.h

products: IP72

risks: none known

599 - Media Recording generated small files even if no media was received

Ticket #46532. problem: On an analog interface with media recording a file was generated just by going off-hook on the phone

solution: Generate file only if media connection was established

files: media.cpp, media.h

products: all

risks: Minimal

591 - New flash memory on IP200A/IP230/IP240

Ticket #46452. problem: Spansion S29AL032D50TFN00 Flash pin 12 is the ready output and not the write protect input, so P1.16 must no be a output

solution: Fix.

files: flash.c platform_inca.c

products: IP200A/IP230/IP240
risks: Low risk

583 - PBX Broadcast Conference and CFNR

Ticket #46192. problem: The no-response timer is not stopped if a PBX user is called by the broadcast conference object.

solution: Timer handling fixed.

files: pbx.h, pbx.cpp.

products affected: All devices with PBX.

risk: Minimal risk of collateral damage.

581 - PBX: CFU Loop was detected, even if CFU was disabled by boolean

Ticket #46139. problem: The PBX detected CFU loops, even if a CFU was disabled by a boolean object.

solution: Take boolean into account when checking for loops

files: pbx.cpp

products: all with PBX

risks: Minimal

597 - phone may trap on late LDAP directory search result

Ticket #46511. problem: a search result arriving after the call object has been deleted may cause a trap (collateral damage of #45166)

solution: check for presence of call object

files: app_call.cpp

products: all phones

risks: None

598 - Ringback missing with two-stage dialing thru PBX waiting to public network

Ticket #46527. problem: If thru waiting a destination is called which provides in-band ringback, this ringback was not connected to the caller, but a local ringback was not generated as well.

solution: Generate local ringback

files: pbx_wait.cpp

products: all with PBX

risks: Minimal. Fix can only affect exactly this case.

589 - Trap in SIP stack when processing REGISTER response

Ticket #46448. problem: A trap may occur when handling REGISTER response.

solution: Fix.

files: sip.cpp

products: All SIP devices

risks: No risk

605 - Unsolicity NOTIFY(simple-message-summary) rejected with 481

Ticket #46631. problem: Request-URI of NOTIFY contains local AOR (not local Contact-URI).

solution: Check Request-URI against local AOR, not only against local Contact-URI.

files: siptrans.cpp

products: All SIP devices

risks: No risk

V7 Hotfix12 (09-70300.23)

622 - don't report a sent() callback in a HTTP GET operation as an error

Ticket #47254. problem: on a HTTP GET operation the httpclient object triggers a sent() callback when the GET request data has been sent. This is not error and thus should not be traced

solution: fix in code

files: update.cpp

products: all

risks: None

625 - Feature code local clear of MWI

Ticket #47372. problem: The feature code local clear of MWI should be transparent to the call instead of closing it.

solution: Sending disconnect message removed.

files: dtmffty.cpp.

products affected: All devices with supplementary services.

risk: Minimal risk of collateral damage.

623 - Gateway: Trap if too many maps configured at an interface

Ticket #47267. problem: A buffer overrun happened when many maps at an interaface were configured

solution: Do not use a static buffer, but a packet instead

files: gk.cpp

products: all gateways

risks: None

611 - H323 OEM event decoding

Ticket #46931. problem: For an OEM protocol some event content items are missed in the signaling information event.

solution: Event action fixed.

files: h323_tbl.tbl.

products affected: All devices.

risk: No risk of collateral damage. Only relevant for OEM protocol.

606 - If a call-completion was initiated the callback number was wrong in some cases

Ticket #46662. problem: The number sent with MWI to the called phone indicating a callback request, was not correctly adjusted taking nodes and escapes into account

solution: Adjust number

files: pbx.cpp

products: all with PBX

risks: None

646 - incorrect pointer assignment in submit_config of dtmf/icp object and false configuration possibility

Ticket #47715. problem: a) local buffer assigned to a given pointer
b) it was possible to configure just one of two needed e164 and if configured just one (which makes sense for pickup), the code was not correctly shown as enabled in configuration window.

solution: fix in code

files: pbx_dtmf.h, pbx_dtmf.cpp, pbx_edit_dtmf-ctrl.xsl, pbx_icp.cpp

products: all pbx products

risks: None

661 - IP-DECT idle display update

Ticket #47890. problem: Idle display update does not work for DECT handsets.

solution: Functionality implemented, but it must be enabled over the GUI and must not be used if foreign handsets are used.

files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

634 - IP-DECT OEM location update during handover

Ticket #47519. problem: A new setup message from a radio should not trigger a OEM location update during handover state.

solution: Condition added.

files: dectmaster.h, dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

670 - IP-DECT OEM module software update

Ticket #47933. problem: There are new software versions of the OEM software modules: BMC interface software, MSF module and Skinny protocol.

solution: OEM modules replaced.

files: DECT files, MSF files, Skinny files, config.h, fty.h, fty.cpp.

products affected: All DECT devices.

risk: Normal risk of collateral damage. Updated from improved OEM branch.

632 - IP-DECT OEM Network region roaming user attribute

Ticket #47513. problem: The user attribute for the new feature 'roaming between network regions' is deleted if the user data is changed over the GUI.

solution: User attribute added in the OEM GUI and forwarded to the LDAP query.

files: dectusers.h, dectusers.cpp, dect_edit_user.xsl (OEM).

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for OEM products.

626 - IP-DECT OEM protocol DTMF as keypad

Ticket #47395. problem: For OEM protocol option 'DTMF as keypad' should be always on.

solution: Configuration update function fixed.

files: dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only relevant for the configuration of an OEM protocol.

607 - IP-DECT OEM Standby master capabilities

Ticket #46678. problem: It should not be possible for OEM devices to delete anonymous endpoints or to edit users if the standby master is active and used.

solution: Control functions and OEM GUI changed. Display message types added.

files: dectusers.cpp, dectmaster.cpp, dectradio.h, dectradio.cpp, dectdisplay_if.h, dectdisplay.h (OEM), dectdisplay.cpp (OEM), dect_users_left.xsl (OEM), dect_users_right.xsl (OEM).

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

616 - IP-DECT registration down reason text

Ticket #47121. problem: New description for the registration down reason is needed.

solution: Reason text changed.

files: dectusers.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage. Only description.

618 - IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes

Ticket #47161. problem: IP2000 uses only 64Mbyte SDRAM, should be 128Mbytes

solution: Fix.

files: startup_ixp245.s, boot2000.y

products: IP2000
risks: The first 16 IP2000 ( Mac-Address < 00-90-33-24-00-10 ) with 64Mbyte die with this bootcode

649 - IP22 Interop with devices that do not support T38 redundancy and retransmits

Ticket #47772. problem: Some fax gateways (e.g. old avaya equipment) do not accept T.38 packet with redundancy or do no accept resent packets with the same sequence number

solution: DSP config added, use http://addr/AC-DSP0/info.xml?xsl=dsp.xsl to edit the settings.

files: ac_dsp3.cpp ac_dsp3.h ac_dsp3.mak dsp.xsl
products: IP2x IP30x
risks: Low

628 - IP24, IP28, IP302, IP305 dsp did not support renegotiation from PCM to VOIP

Ticket #47494. problem: If a call was established first with a direct PCM connection and then switched over to a normal VOIP call, there was no media. This could happen with calls from ISDN to a endpoint with a lokal analog interface (first reg) and a IP Phone (second reg) registered. The media with the local analog interface was established first, when the call was answered on the IP phone, the renegotiation happend.

solution: fix dsp driver

files: ac_dsp3.cpp, ac_dsp3.h

products: IP24, IP28, IP302, IP305

risks: other media problems with DSP

629 - IP6000/2000 trap handler must be run on common stack to prevent false alarms in post mortem memory diagnostics

Ticket #47501. problem: the trap handler was run on a fixed stack below the stack area used in normal operations and in interrupt handling. this way some allocated memory could be overriden and a false alarm could be raised by the memory sanity checks at the end of trap handling

solution: fix in code

files: startup.S, ip6000.cpp

products: ip6000,ip2000

risks: None

619 - ISDN interop flag "No-Disc" used to change handling of incoming DISC as well

Ticket #47210. problem: The No-Disc interop flag only resulted in no DISC being sent, but RELEASE instead. Symmetric behaviour would be desired.

solution: With No-Disc set a RELEASE message is sent immediatly when a DISC is received

files: q931.cpp

products: All with ISDN

risks: None

652 - malloc must always run disabled

Ticket #47792. problem: usually malloc is called only from disabled state. in some extremely rare cases (for example before a DRAM upload) it is called from enabled state and then an interrupt may cause assignment of the same memory chunk to different callers.

solution: fix in code

files: os.cpp

products: all products

risks: None

657 - MWI configuration options

Ticket #47884. problem: It should be possible to configure different numbers for the notify and interrogate number.

solution: New configuration option implemented.

files: dtmffty.h, dtmffty.cpp, dectfty.h, dectfty.cpp, dectfty.xsl(OEM).

products affected: All devices with DECT or PBX.

risk: Minimal risk of collateral damage.

658 - PBX Broadcast Conference Option

Ticket #47885. problem: It should be possible to configure if the last remaining user in a conference call should be disconnected or not.

solution: New configuration option implemented.

files: pbx_bc_conf.h, pbx_bc_conf.cpp, pbx_edit_bc_conf.xsl.

products affected: All devices with PBX.

risk: Minimal risk of collateral damage.

620 - PBX trap when adding many groups to a object

Ticket #47243. problem: A buffer overrun happened if too many groups were added to a object

solution: Check for buffer overrun added. Buffer doubled to avoid limitation

files: pbx.cpp, pbx.h

products: all with PBX

risks: None

651 - permit to control the display format of names from local/PBX directory the same way as for external directories

Ticket #47784. problem: some users want to control the name display format for inbound and outbound calls separately and to reorder/omit parts of a name. this already works for external directories but names from local or PBX directory were not displayed if the first name attribute was not configured for display because such names have only one, the 'cn' attribute.

solution: by default the full 'cn' is displayed for entries from local or PBX directory. if the format string starts with an asterisk ('*') 'cn' is tokenized and the tokens are ordered according to the requested format.
config add PHONE APP /name-display-in <format-in> /name-display-out <format-out>"
'format-...' selects the name attributes to be displayed and their order.
The default format is "123", i.e. all names are displayed as configured.
"3" displays only the third attribute of a name from an external directory but the complete 'cn' from local or PBX directory.
"*3" displays only the third attribute of a name from an external directory and only the third token (if any) of a 'cn' from local or PBX directory.

files: app_call.cpp

products: all phones

risks: None

617 - permit to search external directory for local numbers

Ticket #47151. problem: special application environments require to hide the PBX provided name-id via "config add PHONE SIG /no-name-id". If in this case the external directory is used to provide name info for local numbers it is searched only if the 'Dialing Location/External Line' prefix is empty.

solution: "config add PHONE DIR /dont-skip-ext" forces the external directory to be searched local numbers (not starting with the 'External Line' prefix) too.

files: phone_dir.cpp

products: all phones

risks: None

601 - phone must propagate error logs from call object to logging service

Ticket #46570. problem: error logs from call object sent to the phone registration object are not propagated to the logging service.

solution: fix in code

files: phonesig.cpp

products: all phones

risks: None

653 - prevent creation of pbx dtmf object with char '#' in long name

Ticket #47803. problem: it was possible to create a dtmf object with long name dtmf#join_group. If one then creates another dtmf object with long name dtmf and feature code join group enabled, it traps, because the object tries to create another user with dtmf#join_group as long name without check.

solution: disallow char '#' in long name of dtmf object

files: pbx_dtmf.cpp

products: all pbx devices

risks: None

655 - provide uptime and local time of trap in debug log

Ticket #47854. problem: sometimes it's helpful to know at which time of day and how long after boot a trap occured

solution: fix in code

files: box.cpp, arm.cpp

products: all

risks: None

631 - Quickdial, Incorrect Display for Umlaute

Ticket #47512. Problem: Quickdial, Incorrect Display for Umlaute.

Solution: UTF-8 decode display info

Files: pbx_qdial.cpp

Products affected: PBX products

Risk: No risk.

608 - Recall to user not in root node did not work

Ticket #46690. problem: A recall after transfer to a user not in root node did not work, if call from another Node. If call from same node, number display was wrong

solution: Take node into account when root recall

files: pbx.cpp

products: all with PBX

risk: Risk of collateral damage limited to recall

614 - SIP interop: SAGEM fax server fails to receive t38 fax

Ticket #47085. Problem: SAGEM fax server gets initial SDP offer with audio (non-zero port) and t38 (zero port) and accepts with audio (zero port) and t38 (non-zero port).

Solution: Config option to select t38 capability indication. Use "/t38-cap 1" or "/t38-cap 2" for SAGEM.

Files: sip.cpp/h sdpmsg.cpp/h

Products affected: SIP gateways

Risk: No risk.

612 - SIP: "300 Multiple Choices" was not handled

Ticket #46938. Problem: SIP response "300 Multiple Choices" for INVITE was not handled.

Solution: Re-send INVITE with replace Request-URI.

Files: sip.cpp

Products affected: All SIP devices.

Risk: No risk.

613 - SIP: Assignment of incoming calls to signaling interface fails

Ticket #46939. Problem: INVITE is rejected with "403 Forbidden" if Request-URI does not match local Contact-URI.

Solution: Do not require URI match, if only one signaling interface on local recv port.

Files: siptrans.cpp

Products affected: Devices with registered SIP interfaces (phones/gateways).

Risk: No risk.

667 - SIP: Handling of transfer to different ip address

Ticket #47917. Problem: MS Exchange transfers fax calls to external fax servers with REFER.

Solution: Follow this transfer and send new INVITE to destination address.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk

638 - SIP: Missing request re-transmission after 100/Trying

Ticket #47573. Problem: A non-INVITE request (e.g. REGISTER) was not re-transmitted after 100/Trying has been received. A lost final response caused a transaction timeout.

Solution: Do not stop Timer E when entering transaction state "Proceeding".

Files: siptrans.cpp

Products affected: All SIP devices

Risk: No risk.

621 - SIP: No ACK is sent

Ticket #47252. Problem: If a call receives lots of provisional responses (20 or more), SIP may fail to send ACK and "ERROR: SIP message buffer (2049) exceeded!" appears in trace.

Solution: Check if a new provisional response really updates anything (e.g. tag).

Files: siptrans.cpp

Products affected: SIP gateways

Risk: No risk.

673 - SIP: Problem with media negotiation after 488

Ticket #47957. Problem: After re-INVITE client transaction was rejected (e.g. 488) the next re-INVITE was not send. May result in one-way-audio.

Solution: Cleanup when handling reject for re-INVITE.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk

624 - sporadic HTTP_REQUEST Assertion

Ticket #47348. problem: HTTP_REQUEST assertion due to large alloc size after send_responses during idle state

solution: cleanup http session after responses, debugs added
files: http.h, http.cpp

products: all

risks: Low risk of collateral damage

627 - Trap on dialing directory search object with http and full number including # to connect

Ticket #47403. problem: class directory_search_call_http deleted twice

solution: prevent double deletion

files: pbx_dirsearch.cpp

products affected: all PBX devices

risk: No risk of collateral damage, as the fix is just valid for directory search calls with a http server

630 - Trap on SIP call clearing

Ticket #47511. Problem: Trap on SIP call clearing.

Solution: Fix double delete of call object.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk.

615 - Trap when adding a group to a pbx dtmf child object

Ticket #47104. problem: the box traps, when a group is added to a pbx dtmf child object, which shouldn't be configurable.

solution: remove configuration possibility of child objects.

files: pbx_obj_rights.xsl

products affected: All pbx devices.

risk: none

609 - update 'scfg' command may hang if target url is invalid (non existent host or host rejects connect)

Ticket #46716. problem: update 'scfg' command hangs if the target url is invalid and the HTTP-PUT operation is terminated when no other operation is pending. In this case the termination of 'scfg' was not reported from UP0 to the script process UP1

solution: fix in code

files: update.cpp

products: all

risks: None

610 - When the phone speaker volume is changed the micro must stay disabled if it was disabled before

Ticket #46788. problem: When the phone speaker volume was changed while the micro was disabled the micro was enabled but displayed as disabled. Naturally the micro must stay disabled here.

solution: fix in code

files: phonesig.cpp

products: all phones

risks: None

633 - Wrong DTMF when dialing DTMF feature codes from analog devices

Ticket #47516. problem: on channel connect, a DTMF can be send twice

solution: do not connect for feature codes, when not needed

files: pbx_dtmf.h, pbx_dtmf.cpp

products affected: all PBX devices

risk: No risk of collateral damage, as the fix is just valid for dtmf feature codes

V7 Hotfix13 (10-70300.24)

726 - allow empty search base in directory search object

Ticket #48702. problem: ldap server needs an empty search base, but the directory search object doesn't allow an empty one

solution: disable check for empty search base

files: pbx_dirsearch.cpp

products: all pbx devices

risks: None

711 - Call-Completion display at called phone not deleted if calling/called in same but not root node

Ticket #48579. problem: The Call-Completion waiting display at called endpoint was not deleted after execution of call completion if calling and called endpoint in same but not root node. The mwiDeactivate used to deleted the display contained the wrong number. In a previous fix the mwiActivate which was also wrong was fixed, so before this fix it worked, because both contained the same wrong number

solution: Fix number in mwiDeactivate

files: pbx.cpp

products: all with PBX

risks: None

718 - Gateway Routing Table: Routing a call to a Gatekeeper registration using Name Out did not work anymore

Ticket #48609. problem: When Name Out in a route was used to address a Gatekeeper registration this Name Out was sent with the call. This prohibited further routing of the call on the receiving side with overlap sending.

solution: Do not send Name Out with call if the name is used to identify Gatekeeper reg.

files: relay.cpp

products: all Gateway products

risks: Small risk that this name needs to be transmited for some special configurations

745 - Gateway: Trap if reconfiguring an analog interface registration with Feature Code support

Ticket #48839. problem: If the reegistration configuration of an analog interface (e.g. changing registration name/no) was changed a trap happened when the registration was up again. Happened only with enabled Feature Codes.

solution: Better handling of reconfiguration

files: dtmffty.cpp, gk.cpp, relayfty.cpp, relayfty.h, relayfty_if.h

products: all with analog interfaces

risks: Minimal

746 - IP-DECT facility entity memory leak

Ticket #48851. problem: Facility entity objects aren't deleted in rare situations.

solution: Facility entity delete function call fixed.

files: dectmaster.cpp, dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

759 - IP2000/IP6000 must permit more than 8000 users

Ticket #49079. problem: for the IP2000/IP6000 the number of objects in stored flash directory is restricted to 8000 but some customers need more.

solution: increase default to 10000, permit for more (or less) via "config add FLASHDIR0 /max <number-of-objects>"

files: flashdir.cpp, config.h

products: IP2000/IP6000

risks: None

737 - IP240-1000 - network connectivity lost after restart of the physical layer controller because of spurious errors

Ticket #48786. problem: the physical layer controller (PHY) of an IP240-100 is checked for spurious errors any second. If such errors are detected the controller is restarted. After restart data transfer from the phone CPU to the network was blocked. Data reception from network and transfer between LAN and PC port did work.

solution: fix in code

files: inca_drv.cpp

products: IP 240-1000

risks: None

741 - Leaks with DECT signalling using TLS

Ticket #48821. Problem: Sometimes the TLS sockets that are used by DECT signalling are not deleted because of a shutdown event collision in the TLS socket

Solution: Fix TLS shutdown flow

Files: tls.cpp, tls.h

Risk: Collateral damage with other applications using TLS

755 - Master PBX to obtain licenses from another Master

Ticket #48939. problem: There are configurations in which centralized licensing is desired but otherwise independent Master PBXs are needed.

solution: Configuration option added to allow a slave to register at a master to obtain licenses, but act as master in all other respects

files: pbx.cpp, pbx.h, pbx_general.xsl

products: all with PBX

risks: Minimal

730 - Memory Leak

Ticket #48715. Problem: Lost memory every time a registered SIP interface is deactivated.

Solution: Free allocated memory for authentication data.

Files: sip.cpp

Products affected: SIP endpoints

Risk: No risk.

723 - Missing normalization of received diverting leg info

Ticket #48625. problem: A diverting leg info received on a trunk or gateway object must be normalized to the PBX internal representation (number from root with all prefixes but without escapes) to be displayed correctly when sent to an endpoint. This normalization was missing.

solution: Normalization added.

files: pbx.cpp, pbx.h, pbx_api.h

products: all with PBX

risks: None

709 - One-way-voice after retrieve together with SRTP, H323 and Registration with password

Ticket #48572. problem: One-way-voice could happen after retrieve, if SRTP is used on H.323 call, which uses a refistration with password. This could also happen when switching to a 3-pty conference (retrieve done on one leg). This is caused by an unencrypted SRTP key sent with the media renegotiation.

solution: Do encryption of the SRTP key.

files: h323sig.cpp

products: all

risks: Collateral damage with media negotiation

732 - PBX: As diverting number the real number was sent even if Send Number configured

Ticket #48719. problem: The 'Send Number' should be sent as diverting number if configured

solution: Send 'Send Number' as diverting number if configured

files: pbx.cpp

products: all with PBX

risks: None

761 - PBX: Reference to Config Template lost, when opening User from Registrations page

Ticket #49090. problem: If a user object was opened from the Registrations page a configured config template was not displayed. By pressing Save or Apply the user object was written without the config template

solution: Display config template when opening user object from registrations page

files: pbx_regs.xsl

products: all with PBX

risks: None

735 - PBX: Reject external calls did not work as desired together with call forward

Ticket #48728. problem: An endpoint with 'Reject Ext. Calls' set should not be able to forward external calls. An external call forwarded to an endpoint with 'Reject Ext. Calls' set should succeed.

solution: fixed

files: pbx.cpp

products: all with PBX

risks: Could be that the old behaviour was desired in some installations

713 - PBX: Trap if corrupt CF in flash

Ticket #48584. problem: If somehow an invalid call-forward config ends up in flashdir, the PBX enters a boot-loop

solution: Handle invalid call-forward configs

files: pbx.cpp

products: all with PBX

risks: none

724 - PBX: Trap when receiving Facility during disconnect

Ticket #48626. problem: A trap could happen in case of a collision of Facility and Call Clearing, with very special timing, because of an attempt to send a facility on an already deleted call.

solution: Better check for deleted call.

files: pbx.cpp

products: all with PBX

risks: None

743 - Potential trap when reconfiguring Gateway interfaces

Ticket #48834. problem: If a gateway interface is reconfigured while calls are active a trap could happen later on.

solution: Better handling of reconfiguration

files: signal.cpp, signal.h

products: all

risks: none

681 - SIP: Media negotiation problem at Alcatel Omni PCX

Ticket #48339. Problem: Several provisional responses with changing remote RTP addresses may cause RTP to be sent to wrong destination.

Solution: Fix handling of updated SDP answers.

Files: sip.cpp

Products affected: SIP devices

Risk: No risk.

690 - SIP: No switch from local ringback tone to inband ringback tone

Ticket #48427. Problem: No switch from local ringback tone to inband ringback tone, because 183/Progress response was not handled after 180/Ringing.

Solution: Handle 183 after 180.

Files: sipstate.cpp

Products affected: SIP devices

Risk: No risk.

693 - SIP: Problems with DTMF when interworking v5 devices to SIP

Ticket #48440. Problem: A call initiated by a v5 device that is interworked to SIP may have problems with DTMF.

Solution: Send SDP offer in INVITE as one single media description.

Files: sip.cpp

Products affected: SIP gateway and PBXs

Risk: No risk.

700 - VM: Trap, Double-Free after sending Email with Body

Ticket #48498. problem: VM, trap, double free after sending email with body

solution: don't send such emails or apply fix

files: smtp_mta.cpp

products: all pbx devices

risks: None

V7 Hotfix14 (10-70300.25)

830 - AD Replicator, Searches to Global Catalog Server weren't possible

Ticket #50130. Description problem: Searches to Global Catalog Server weren't possible

solution: Fix configuration for LDAP port

files: ldaprep.cpp

products: all PBX-,Dect products

risks: None

832 - fat32 check disc trap

Ticket #50202. Problem: After a firmware trap with a cf card, the afterwards check disk can cause a trap loop, if directory entries are corrupt because of the first trap.

Solution: Increment counter which caused the trap loop.

Files: fat32.cpp

Products affected: All gateways with CF slot

Risk: minor risk

826 - Gateway sends calls to wrong registered SIP endpoint

Ticket #50103. Problem: If the addressed endpoint is currently not registered at the registrar interface at the gateway, calls are delivered to another registered SIP endpoint.

Solution: Reject calls if addressed endpoint is not registered.

Files: siptrans.cpp

Products affected: All gateways

Risk: No risk.

770 - Gateway: CGPN Map at route was executed even if the call using this route failed

Ticket #49176. problem: A CGPN Map at a route was executed even if the call using this route failed. This was confusing if rerouting was configured in case a destination was not available.

solution: CGPN map not executed if call failed, so rerouting could be done with the same CGPN

files: gk.cpp

products: all gateway products

risks: Could be that there are configs depending on old, wrong behaviour

822 - GUI: Registration indicator not aligned

Ticket #50074. Problem: The registration indicator (arrow) was not aligned on Gateway/GK page.

Solution: Make it aligned.

Files: relay_ifs.xsl

Products affected: All gateways

Risk: No risk.

774 - H.323: EFC coding wrong

Ticket #49199. problem: Coding of EFC was wrong in early versions. This was fixed, but can be configured to the old (wrong) coding with config change H323 /fix 0, with config change H323 /fix 1 the fix can be turned on. Without the /fix option the default should be fixed, was was not.

solution: /fix default set to 1

files: h323sig.cpp

products: all

risks: Compatibility with mixed versions

796 - headset mode must be kept when a knocking call is accepted via operator while a disconnected call is pending

Ticket #49797. problem: a knocking call accepted via operator was routed to speaker instead to headset when the phone was in headset mode playing the busy tone for a call which was disconnected from remote.

solution: fix in code

files: app_ctl.cpp

products: all phones

riscs: none

846 - IP-DECT hanging calls

Ticket #50387. problem: Sometime there are hanging calls in the radio.

solution: New timer added to check for hanging calls.

files: dectradio.h, dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

804 - IP302/IP305: PCM connected channels disconnect other channels media

Ticket #49880. problem: disconnect is sent to wrong channel

solution: fixed in code

files: ac_dsp3.cpp

products: ip302 ip305

risks: low risk

797 - IP800 conference

Ticket #49799. problem: Conference hardware initialization for channel ten does not work.

solution: Delay within initialization sequence inserted.

files: ipac_drv.cpp.

products affected: Devices with IPAC chip.

risk: No risk of collateral damage.

816 - Media Negotiation between SIP and H.323 failed if Offer from both sides available

Ticket #50050. problem: If a H.323 and a SIP call leg were to be connected and a media offer was available on both legs, nothing happend. The new offer should have been sent on the H.323 leg. This situation could happen in special cases with transfer and reverse media.

solution: Send offer on H.323 in this case

files: h323ch.cpp

products: all

risk: Small riks of collateral damage

766 - Media Renegotiation from H.323 Slowstart to H.323 EFC failed accross multiple PBXs

Ticket #49148. problem: The message with the new FeatureSet, which indicated a switchover from non-EFC to EFC was not forwarded by the PBX. This happens if a slow-start endpoint located at a slave transfers a call originating from another slave so that both new endpoints are EFC. The master in this case did not forward the switchover FeatureSet.

solution: forward FeatureSet

files: h323ch.cpp

products: all

risks: None

764 - Need to configure 'Route Root-Node External Calls to' in case of 'License Only' on Slave

Ticket #49138. problem: A Slave or Standby-Slave PBX configured as 'License Only' did not allow to configure a Root Node Extern destination

solution: Allow configureation of Root-Node Extern

files: pbx_general.xsl

products: all with PBX

risks: None

811 - One-way-voice after unpark/pickup together with SRTP, H323 and Registration with password

Ticket #49965. problem: Within media renegotiation after unpark/pickup a wrong SRTP key was sent. This resulted in one-way media.

solution: Transmit correct SRTP key

files: h323sig.cpp

products: all

risk: Other media problems

785 - PBX: After CFNR from Waiting with end of first announcement no MOH during call proceeding/alerting

Ticket #49459. problem: If a CFNR is executed at the end of the first announcement of a Waiting object (no second announcement), MOH should be played during call proceeding/alerting of the forwarded call. This did not happen, because MOH was turned off by accident with clearing of the announcement call.

solution: Don't turn off MOH

files: pbx.cpp

products: all with PBX

risks: litte risk of other media problems within PBX

817 - PBX: Special fix for group-indications to exec now for exec only

Ticket #50054. problem: A special fix was done for the problem that a exec needs to see if a call ringing at the secretary, is a call which is actually directed to the exec or if the secretary was called directly. Group Indication for calls diverted by the user sent to the user are sent as if the call was ringing at the user. This causes problems, because the Group Indications do not wor as expected.

solution: Do this fix for exec only. In 8.00 this is fixed in a better way (diverting info added to group indication)

files: pbx_gi.cpp

products: all with PBX

risks: None

782 - SIP: 180/Ringing was not re-transmitted

Ticket #49413. Problem: If 180/Ringing got lost and the caller re-transmitted INVITE, re-transmission of 180/Ringing was missing.

Solution: Re-transmit last sent provisional response.

Files: siptrans.cpp

Products affected: SIP devices

Risk: No risk.

834 - SIP: Expires parameter not always decoded from REGISTER response

Ticket #50211. Problem: If the registrar added a display name to the client's Contact-URI the assigned expires value was not decoded.

Solution: Ignore display name in Contact-URI of REGISTER response.

Files: sip.cpp

Products affected: All SIP endpoints

Risk: No risk.

778 - SIP: Not accepting calls from alternative proxy

Ticket #49281. Problem: When being registered at a proxy with 2 ip addresses the gateway does not accept calls from the alternative ip address.

Solution: Accept calls from both ip addresses learned by DNS.

Files: siptrans.cpp

Products affected: SIP devices

Risk: No risk.

841 - Wrong calling party info on CTI initiated calls from a phone to a Trunk Object with 'Set Calling=Diverting No' checked

Ticket #50304. problem: When a CTI application (TAPI or other SOAP based application) initiates a call from a phone to a Trunk Object with 'Set Calling=Diverting No' checked the the called party receives a wrong calling party info.

solution: when a CT-INITIATE is received on a RC-CONNECT call the cdpn in the CT-SETUP facility sent with the newly created outbound call is set to the phones own number (i.e. identical to the SETUP cgpn).

files: phonesig.cpp

products: all phones

riscs: none

V7 Hotfix15 (70300.27)

856 - in any phone recording mode the recorder gets number and/or h323id of the currently connected remote party

Ticket #50823. problem: without this infomation the identification of the remote party in an recorded call requires syncronisation with log files not directly available in the recorder.

solution: a CT-COMPLETE with number/h323id of the remote party is sent to the recorder whenever the remote party changes because of a consultation call or a call transfer.

files: appp_form.cpp, app_fkey.cpp, app_disp.cpp, app_ctl.cpp, app_ctl.h, app_call.cpp

products: all phones

risks: Minimal for recorders not able to deal with CT-COMPLETE info

852 - INCA phones - monitoring a headset conversation via handset (headset-spy) did not work

Ticket #50672. problem: the /headset-spy option was skipped because of a bug in the driver option handler

solution: fix in code

files: inca_dsp.cpp

products: all phones

risks: None

914 - IP-DECT configuration option 'Redirection with GK ID'

Ticket #51619. problem: Configuration option needed to append the GK ID if the registration is redirected by the PBX.

solution: Configuration option added.

files: dectmaster.h, dectmaster.cpp, dectmaster.xsl.

products affected: All DECT devices.

risk: No risk of collateral damage.

910 - IP-DECT trap during call release and information message

Ticket #51584. problem: A trap occurs if the DECT handset sends a information message and the call is release by the PBX. Only the channel is released, but not yet the call.

solution: Null pointer check added.

files: dectmaster.cpp.

products affected: All DECT devices.

risk: No risk of collateral damage.

887 - IP-DECT wrong forward of internal information event

Ticket #51417. problem: A internal information event is wrongly forwarded to the PBX.

solution: Forward of this event is avoided.

files: dectradio.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

893 - no RTP-DTMF after rerouting

Ticket #51432. problem: If rerouting happened from one media endpoint to another, for example if a TONE interface is used for a dialtone after one digit dialed there is a rerouting to another interface, RTP-DTMF does not work.

solution: Media renegotiation fixed for this case

files: ac_dsp.h, ac_dsp2.h, ac_dsp3.h

risks: none

919 - One way media after SRTP renegotiation on IP6000

Ticket #51691. Problem: On the IP6000 platform the SRTP ROC was not reset on media renegotiation.

Solution: Reset SRTP ROC when rtp_channel::set_media_config is called

Files: srtp_cipher.cpp

Risk: no risk known

950 - PBX potential trap in case of collision of disconnect with intrusion and other operations changing media peer

Ticket #52070. problem: If a call is attempted to intrude right when this call is being disconnected at NULL pointer access could happen

solution: Check if call is still active when before execute intrude

files: pbx.cpp

products: all with PBX

risks: none

886 - PBX-CDR: Local Time wrong (same as UTC)

Ticket #51416. problem: In the CDRs from the PBX the local time was always set to UTC

solution: Use correct time

files: pbx.cpp

products: all with PBX

risks: None

940 - PBX: SOAP initiated calls were sent with CT-SETUP

Ticket #51965. problem: If a call was initiated by SOAP to the PBX, the outgoing call contained a CT-SETUP facility. This way the call was displayed as transfered call by the destination, but it should be displayed just the same as a call initiated on the phone itself.

solution: remove CT-SETUP from outgoing call

files: pbx_xml.cpp

products: all with PBX

risks: None

948 - PBX: Successive diversion activate/deactivate and dynamic group status sometimes failed

Ticket #52038. problem: If a diversion activate/deactivate from an endpoint arrived before the last was written to flashdir, update was performed based on information in dram not information being written into flash

solution: Update information in dram before writing to flashdir

files: pbx.cpp, pbx.h, pbx_api.h, pbx_dtmf.cpp

products: all with PBX

risks: Collateral damage with diversion/dynamic group updates

881 - Phone: Local coder config was not used on outgoing phone calls

Ticket #51352. Problem: Local coder config was not applied to outgoing phone calls, but is required when it comes to media re-negotiation.

Solution: Give local coder config to all kind of calls.

Files: phonesig.cpp/h

Products affected: All phones.

Risk: No risk.

921 - Possible trap when removing a cf card without previous unmount

Ticket #51704. Problem: events where queued to not exisiting serial

Solution: cf driver shouldn't answer outstanding events after removing the cf card, as the fat32 module won't wait for any events after receiving status removed event

Files: cf_drv.cpp

Risk: minor risk

861 - Progress Indicator 'Call not end to end ISDN' sent with each H.323 alert

Ticket #50944. problem: The PI 'call not end to end isdn' was sent with each H.323 alert. But this progress code also indicates that in-band info is available, so a local ringback is sometimes turned of because of it.

solution: Do not send 'call is not end to end isdn'

files: relay.cpp

products: all gateway products

risk: Could be that some endpoints require this PI

949 - SIP: Missing dialog-info for calls without or zero-length CGPN

Ticket #52060. Problem: No dialog-info was sent for calls without or zero-length CGPN.

Solution: Use calling party's name if no CGPN is available.

Files: sip.cpp

Products affected: All PBX's serving SIP phones

Risk: No risk.

958 - SIP: SRTP key changes right after connect

Ticket #52169. Problem: During call establishment with SRTP a re-INVITE is initiated right after connect providing a new SRTP key. It's unnecessary and some equpiment fail to handle change of SRTP key.

Solution: Avoid change of SRTP during call.

Files: sip.cpp/h

Products affected: SIP Gateways

Risk: No risk.

930 - Trap if some but not all interfaces of a given type are unlicensed

Ticket #51772. problem: If some but not all interfaces are unlicensed (e.g. IP6000 with 4 PRI interfaces is licensed for 2 PRI interfaces) a trap could happen any time after the Gateway config was updated.

solution: Access to license structure fixed

files: inno_lic.cpp, gk.cpp

products: all gateway products

risks: None

920 - Trap in SRTP socket

Ticket #51693. Problem: Under special conditions SRTP sockets send events to serials that are already deleted.

Solution: Check if the destination does still exist before sending the event.

Files: srtp_cipher.cpp

897 - v7: Trace output added to track down cause of "alloc-size" traps

Ticket #51446. Problem: Traps happen within the flash directory due to a memory allocation request greater than the maximum grantable size.

Solution: More information is needed. Added error-trace output.

Files: flashdir.cpp

Risk: none

880 - v7:Qsig: leg1Info sent with ALERT msg, instead of in FACILITY msg

Ticket #51346. Problem: Siemens ACWin got confused after upgrade v6->v7. Qsig mandates to send the leg1Information within a FACILITY message (while H.323 does also allow for an ALERT to carry the leg1).

Solution: Detect and treat this case accordingly within the relay/gateway.

Files: relay.cpp

Risk: none

878 - wrong calculations causing check disc to damage data

Ticket #51304. Problem: check disc could produce damaged data in certain situations

Solution: correctly calculate partial records and clusters for next run. Also check if clusters are used multiple times.

Files: fat32.cpp, fat32.h, fat32.xsl

Risk: minor risk

V7 Hotfix16 (70300.28)

1000 - Call Intrusion across PBXs did not work

Ticket #52578. problem: If a call was to be intruded with the destination of the intrusion (which is one of the endpoints of the call to be intruded call) on a different PBX the intrusion failed in a strange way, because the intrusion facilities were not correctly forwarded between the PBXs

solution: Fix forwarding of intrusion facilities

files: pbx.cpp

products: all with PBX

risks: Small risk of collateral damage with intrusion

1038 - Change packet creator information for debugging

Ticket #53192. Packet's creator is changed to destination module by the OS if trace is enabled for source or destination module. For debugging.

1012 - directory entries displayed duplicate when using delayed input with slow LDAP-servers

Ticket #52877. problem: with delayed keyboard input the number of queries sent to the LDAP server when typing a name is reduced. The first query is sent after the number of characters configured by 'delay-count' or the timeout configured by 'delay-ticks'. If another character was typed before the response arrived a new search was started but the previous search results were not cleared.

solution: fix in code

files: phone_dir_ui.cpp

products: all phones

riscs: none

1058 - formatting of an unknown first partition broke this partition

Ticket #53382. If a cf card has partitions and the first partition wasn't recognized, the formatting of this partition broke the first partition, as the wrong boot sector was used.

1057 - formatting of small cf cards didn't work

Ticket #53381. The formatting of small cf cards (<512 MB) didn't work, as the cluster size was calculated too high.
Smaller cluster sizes are used now.

1042 - H.323 coding fixed, Wireshark indicated error

Ticket #53208. The mandatory field 'maintainConnection' was missing in the Setup message. This usually does not create problems, because it is an extension, so that the message can be decoded even if the field is missing.

NULL element 'symmetricOperationRequired' was coded with length 0. According to the standard it should be a byte with all 0 bits and length 1.

983 - H.323 local-media renegotiation with SRTP results in one-way media

Ticket #52431. problem: Wrong key was used after media renegotiation

solution: Make sure the right key is used

files: h323ch.cpp

products: all

risks: None, same fix is used for a long time in v8

1039 - H.323 RAS registration more robust

Ticket #53194. On wireless or congested networks registrations were lost easily if only a few packets were lost. Esspecially if a call signal failed the registration was assumed lost right away. Now this triggers only a keep-alive cycle.

991 - H.323 Signal IE when sent once during a call, was then sent with each subsequent message

Ticket #52518. problem: A Signal IE sent with one message was repeated with all the messages. This could cause the a Signal IE indicating Ringback sent with Alert was repeated with Disc, so that no busy tone was played with Disc, but Ringback

solution: Send Signal IE once only

files: h323sig.cpp

products: all

risks: Minimal risk of collateral damage

1016 - HTTP memory leak

Ticket #52982. problem: There are memory leaks in http.

solution: Packet deleted.

files: http.cpp.

products affected: All devices.

risk: No risk of collateral damage.

985 - IP-DECT OEM protocol memory leaks

Ticket #52467. problem: There are memory leaks if Skinny protocol is used.

solution: Cleanup fixed.

files: skinny.h, skinny.cpp, skinny_signaling.cpp, skinny_translation.cpp.

products affected: All DECT devices.

risk: Minimal risk of collateral damage.

1029 - IP-DECT OEM protocol release reasons

Ticket #53118. IP-DECT Release reasons for OEM protocol are changed.

1046 - log records to a SYSLOG (UDP) server were sent delayed

Ticket #53224. log records passed to the logging module before the transport layer is up are saved in a queue. in case of SYSLOG (UDP) this queue was not flushed correctly and sending of a record was triggered only by the following record with the effect that one or more of the latest records were always pending in queue.

1013 - Option added to configure DTMF detection sensitivy

Ticket #52879. problem: sporadic false DTMF detect

solution: Option added to configure DTMF detection sensitivy. Use
config change AC-DSP0 /dtmf-threshold <val>
config write
reset
to change the sensitivity.
0 selects -38dBm ( default),
1 selects -28dBm,
2 selects -33dBm,
3 selects -43dBm,
4 selects -48dBm
During boot a non-default sensitivity is shown in the trace

files: ac_dsp2.cpp/h ac48xlo.c ac48xdef.h

products: ip800 ip6000

1063 - PBX Gateway object with Prefix checkmark set, did not remove prefix on retry

Ticket #53414. On a Gateway object multiple gateways can be registered. These gateways are used in a round robin fashion. If a gateway call fails because of resources unavailable the next gateway is tried. The prefix was not removed on this retry as it should be with the Prefix checkmark set

1030 - PBX Waiting: 'CFU disables operator' was not taken into account for 'Max Call/Operator(%)'

Ticket #53123. If the CFU disables operator option is used, an operator with a configured CFU should be treated as if it was not in the operator group. It was still counted as operator for the Max Call/Operator feature.

1045 - PBX-SOAP: UserClear could not be used to cancel UserCall

Ticket #53222. If the local phone was still ringing because of a UserCall, the UserClear could not be used to cancel this call.

993 - PBX: Diverting Info not preserved with SOAP::UserRedirect if diverted on another PBX

Ticket #52532. problem: Normaly a call, which was already forwarded (CFU, CFB, CFNR) and then redirected with UserRedirect, shows the original diverting number. This did not work if the call was forwarded on another PBX

solution: Preserve diverting info

files: pbx.cpp

products: all with PBX

risks: None

1071 - PBX: More then one registration was accepted for a Slave PBX. Caused problems with Standby switchover

Ticket #53496. The normal rules were applied for registrations as Slave PBX. This meant if authentication was used multiple registrations were accepted. This caused the address to which registrations should be redirected to be set wrong. After a switchover to a standby slave and a switchback it could happen that on the Master registrations were not correctly redirected to the slave

974 - PBX: Potential Trap if changing groups

Ticket #52313. problem: If group memberships are changed esspecially at Waiting Queues or Waiting Queue operators a trap could happen, because PBX internal information could get inconsistent.

solution: Fixed update of internal information

files: pbx.cpp

products: all with PBX

risks: Other traps, complex operations, so it is possibly still wrong

989 - PBX: Presentation restricted name was sent with group indication

Ticket #52507. problem: Even if a caller had presentation restricted set, the name was sent in group indications, so it was displayed on pickup keys

solution: Don't send presentation restricted names in group indications

files: pbx.cpp, pbx.h

products: all with PBX

risks: Minimal risk of collateral damage

1064 - PPTP connection failed because of packet reordering by certain DSL providers/equipment

Ticket #53429. dial out PPTP connections to a central innovaphone IPxxx failed when tried from certain remote locations but succeeded from other locations.
The reason for the failure was that packets sent by the central IPxxx were reordered by some network equipment and this case was not handled correctly in the connection setup phase.

1027 - Reject TLS sessions if the server uses an expired certificate

Ticket #53102. TLS connections were not closed on the client side if the server used an expired certificate. This was treated as a warning but not as a fatal error.

Files: tls.cpp

1015 - report result of call triggered by a Dial function key with "Send as Control Call " checked

Ticket #52974. problem: feedback for the keystroke was missing

solution: report result via a popup message on display

files: phonesig_if.h, phonesig.cpp, phonesig.h, app_reg.cpp, app_fkey.cpp, app_ctl.h

products: all phones

riscs: none

965 - SIP: Direction attribute in dialog-info was wrong in some cases

Ticket #52228. Problem: Direction attribute in dialog-info was wrong in some cases.

Solution: Add direction attribute to GI to fix direction attribute in dialog-info.

Files: fty.cpp/h pbx_gi.cpp/h sip.cpp sipfty.cpp

Products affected: PBXs serving SIP endpoints

Risk: Low risk of collateral damage

960 - SIP: Problem with Thomson ST2030 SIP Phone as member of broadcast group

Ticket #52199. Problem: The ST2030 calls for PRACK when sending 180 with SDP offer. PBX cannot provide SDP answer in PRACK. PBX does not send any PRACK here.

Solution: Send PRACK without SDP in this case.

Files: sip.cpp

Products affected: PBX serving SIP endpoints

Risk: No risk.

1003 - SIP: Problems parsing exotic SIP URIs

Ticket #52631. Problem: Failed to decode destination port from a redirect URI like this: <sip:2204;phone-context=cdp.udp@livio.nl:16618;maddr=10.2.10.3;transport=udp;x-nt-redirect=redirect-server>

Solution: Fix URI parsing.

Files: sipmsg.cpp

Products affected: All SIP devices

Risk: No risk

979 - SIP: Trap when performing call transfer on ARM based hardware

Ticket #52357. Problem: Trap due to alignment error.

Solution: Fix alignment of data.

Files: sip.cpp

Products affected: ARM based devices talking SIP

Risk: No risk.

962 - SIP: Trap when using TCP as transport

Ticket #52210. Problem: Trap when trying to cleanup idle/unused TCP connections.

Solution: Check connection state before initiating connection shutdown.

Files: siptrans.cpp

Products affected: SIP devices doing SIP over TCP

Risk: No risk.

976 - socket bind/connect sometimes failed because of duplicate assignment of local wildcard port

Ticket #52342. problem: a local wildcard port could be assigned twice in case a socket using this port did exist over a period where all port numbers above and below this number had been assigned once.

solution: fix in code

files: tcp.cpp, tcp.h

products: all

riscs: none

1023 - Transferring VM calls could trap

Ticket #53064. problem: Transferring VM calls could trap

solution: Add NULL pointer access check

files: pbx_vm.cpp

products: all with PBX

risks: none

964 - Trap if T.38 timer expiry during closing of T.38 session

Ticket #52215. problem: If a T.38 timer expired right within the fraction of a ms which it takes to close the T.38 session, a trap happened

solution: Stop timer before closing session

files: media.cpp

products: all

risks: None

1066 - Trap when sending PRACK for provisional SIP response

Ticket #53459. Problem: Trap when trying to send PRACK for a provisional response for an obsolete INVITE.

Solution: Check state of INVITE transaction before handling provisional response.

Files: sip.cpp

Products affected: All SIP devices

Risk: No risk.

1028 - unset "don't fragment bit" in dummy ip header for rpcap

Ticket #53104. The "Don't fragment bit" of the dummy IP header for rpcap was set, which can cause some confusion, if one does not know, that this header is just a dummy header when reading the innovaphone wireshark trace.
This flag is now off.

1061 - Vulnerability with open UDP sockets used to send RTP from fixed port

Ticket #53412. If data was received on these ports it created a memory leak.

V7 Hotfix17 (73200.29)

1099 - directory search object transfer ignored cfu of called object

Ticket #54122. The transfer of the directory search object should use the transfer method in a way, that checks the called object for cfu etc. and this is done now.

1077 - H.323: Send DISC with inband info as PROGRESS

Ticket #53575. to allow inband announcements

1107 - memory leak when logging to a TCP log server which did connect but did not consume the sent data fast enough

Ticket #54304. too much data was buffered when a TCP log server accepted the connection but did process log data at a lower rate as it was produced (or no data at all).

1105 - One way voice with SRTP, and transfer executed by slowstart endpoint accross PBXs

Ticket #54283. Call from phone with SRTP configured and registration with password to a slowstart endpoint on another PBX, which does transfer back to another SRTP phone on original PBX causes the call between the two SRTP phones to be one-way-voice

1121 - Potential trap during boot

Ticket #54479. If flashman marks the first flash segment as unused (state=0) the device may trap during boot

1118 - SIP: Duplicate Call-ID on forked calls

Ticket #54456. Causes trouble when forked calls go to same destination.
INVITE may be considered as looped.

1116 - SIP: Media-negotiation after call transfer failed (no audio)

Ticket #54442. Re-negotiation after call transfer failed.
Results into no-audio condition.

1108 - Unintialized SRTP key during re-negotation after transfer

Ticket #54352. re-INVITE was sent with invalid crypto attribute

V7 Hotfix18 (70300.30)

1124 - Potential trap when removing CF cards while writing files

Ticket #54666. A file_event_close was sent twice, so that it was sent to an already deleted object.
Use a flag to prevent a second file_event_close.

V7 Hotfix19 (70300.31)

1147 - DTMF feature call completion can be also used for no response

Ticket #55309. The feature is not only usable after a busy call, but also after a call with no response.

1168 - flash variables may get lost after reboot (because of an earlier trap in the critical phase of flash garbage collection)

Ticket #55797. Two valid segments bearing the same data are left back when a fragmented segment is compacted into a new one and the box traps after the new segment has been validated but before the old segment has been marked invalid.
Because of a wrong comparison this situation was not resolved after reboot. Instead of deleting one of the segments the new segment was used until completely filled. Therafter all further allocations failed. This situation could only be cleared by a reset to factory defaults.
Now, if the flash user is permitted to use only one segment (for example VARS on most boxes) the old segment is invalidated and the new compacted segment remains. If the flash user is permitted to use more segments (for example LDAP) the new segment is invalidated because it's not known which of the old segments was compacted.

1148 - Gateway: divertingLeg2 was not passed in some cases

Ticket #55310. divertingLeg2 got lost during re-routing in Gateway.
E.g. routing each call over TONE caused the divertingLeg2 to disappear.

1169 - PBX potential trap when parsing SOAP XML

Ticket #55812. No child element found in SOAP XML

1149 - PBX Waiting: 'CFU disables operator' was not taken into account for 'Max Call/Operator(%)' - Update

Ticket #55313. If the CFU disables operator option is used, an operator with a configured CFU should be treated as if it was not in the operator group. It was still counted as operator for the Max Call/Operator feature.

1161 - SIP: Hide product information in reject responses

Ticket #55620. Don't be kind to SIP scan tools.

1145 - SIP: Outgoing call (early, not connected) was not canceled (sometimes) on ISDN interworking scenario

Ticket #55277. An incoming DISCONNECT with progress indicator did not caused the outgoing SIP call to be canceled.

1172 - some Compactflash cards not working with innovaphone cardslots

Ticket #55903. There are compactflash cards that don't respond 848Ah as General Configuration word to Identify Device Command.

1156 - TEL interface: '#11' not callable if feature codes enabled

Ticket #55537. If feature codes are enabled for a TEL interface, the number '#11' without anything else can not be dialled.
To fix please submit gateway's general page with the OK button or do a factory reset.

1150 - Update client option for short URL

Ticket #55324. For OEM http server the update client should not append additional options to the update server URL.

1059 - XML attribute "href" in PROPFIND response was not URL encoded

Ticket #53390. Problem: XML attribute "href" in PROPFIND response was not URL encoded.

Solution: URL-encode XML attribute "href" in PROPFIND response.

Files: servlet_webdav.cpp

Products affected: All gateways with CF card

Risk: No risk.

V7 Hotfix20 (70300.32)

1173 - Gateway: Trap if Name Out or other fields with very long content

Ticket #55941. A buffer overrun could happen if very long strings were used as input values

1178 - IP2x IP30x: Missing tones on BRI interface with SIP implementations that send RTP prior to coder negotiation

Ticket #56010. This is the problematic scenario:
The IP302 BRI interface is registered on a SIP proxy.
An outgoing call is placed, the SIP proxy sends a STATUS 180 Ringing without SDP information.
The remote side sends RTP data (with inband information) to the IP302.
This switches off the IP302 generated tone, but the remote tone is cannot be used since the SDP is missing in the STATUS 180 message.

Now we ignore RTP with unknown coder for switching off the tone.

1170 - Possible buffer overrun when reading/writing fat volumn id

Ticket #55858. There was a possible buffer overrun when reading/writing the fat volumn id.

1175 - SIP: Distinctive ring tones

Ticket #55948. Handling of "Alert-Info: internal".
Triggers special ring tone.

1179 - SIP: Switch to fax did not work in some cases

Ticket #56076. Sometimes switch to audio occured immediately after switch to t.38

V7 Hotfix21 (70300.33)

1249 - automatic or manual recording cannot be stopped if the recorded call is not the currently active call

Ticket #57685. Automatic or manual recording could not be stopped if the recorded call was not the currently active call.
If the Redial-key is used to toggle recording this is intended behaviour because otherwise the Redial-key could not be used to transfer the non-recorded active call.
If a 'Recording' function key is used to toggle recording there is no need for this restriction.

Now a 'Recording' function key stops automatically or manual started recording any case.

1206 - Disconnect from DTMF/ICP/Directory search object didn't work with mobility

Ticket #56883. The disconnect from the DTMF, ICP and Directory search objects didn't work with mobility, as it was wrongly called.

1248 - Gateway: If Moh Mode is configured set 'exclusive coder' checkmark as well on UI

Ticket #57654. The MOH Mode implies that exclusive coders are used

1201 - IP24, IP28: Trap if doing a tranfer for a pickup call

Ticket #56780. If a pickup was done (*0#) from an analog phone connected to a IP24, IP28 and this call was transfered afterward (R), a trap happened as soon as the transfer was executed either by R-4 or by hanging up

1227 - IP800 Bootcode: Start normal firmware if alternate bootcode runs

Ticket #57345. The minifirmware was started in this case, but this makes no sense in V7.
(In earlier versions this was a way show that there is a problem with the bootcode, but on V7 and later the bootcode/altbootcode is checksumed and restored if the checksum is bad).

1242 - PBX did not send REMOTE_HOLD/RETRIEVE_RESULT

Ticket #57599. This causes problems with some third party equipment, which expects these messages

1200 - PBX: CFNR configured at Waiting not executed correctly on transfer to Waiting

Ticket #56775. under some circumstances not executed at all and sometime without waiting for No Response Timeout

1198 - PBX: Only 8 IP Filters possible, no indication if maximum reached

Ticket #56764. Number increased to 32. If 32 Filters are configured no field to enter a new one is displayed

1199 - PBX: Trap if duplicate "Long Name" in Database

Ticket #56774. It may happen that on a replicated PBX temporarily multiple objects with the same Long Name (cn) exist. In the case the PBX restarted.

1217 - Protect TLS socket against collision of SOCKET_RECV and SOCKET_SHUTDOWN

Ticket #57130. It was possible that a collision of SOCKET_RECV from the application and SOCKET_SHUTDOWN from the TLS socket occured. This could lead to a trap because the application was already deleted when the SOCKET_RECV_RESULT was sent.

1235 - SIP: SDP attribut annexb=no was missing

Ticket #57533. If G.729 Annex B was disabled it must be explicitely announced,
because no mentioning annexb is interpreted as annexb=yes.

1243 - SNMP, ifSpeed wrong

Ticket #57610. SNMP, ifSpeed wrong

1222 - Upgrade V7 TLS

Ticket #57272. Multiple fixes that have been done in V8 before are now integrated into the V7 firmware.

1223 - v9 Replication Compliance

Ticket #57274. Fixes addressing UTF-8 conversions

V7 Hotfix22 (08-70300.34)

1268 - AD-replicator: xml-show-namingcontexts leaks memory

Ticket #58564. a memory leak occurred every time when clicked on Configuration/LDAP/Replicator(AD)/DN/"Show Options"

1278 - Call Intrusion across PBXs did not work (intrude call at slave from master)

Ticket #58710. There was a fix already for this, but this covered only intrude at master from slave.

1269 - Do not disconnect calls to directory search object from master/slave user

Ticket #58587. Calls from a master/slave user where disconnected by the directory search object.
These calls are allowed now.

1282 - DRAM /Firmware upload stops sometimes

Ticket #58769. Depending on the timing the upload hangs.
Seen with the innovaphone test program and minifirmware

1264 - Invalid duplicate DTMF object caused the PBX to trap

Ticket #58514. A false config with an invalid DTMF object (name like DTMF#pickup_group) caused the PBX to trap.
Such an object will be ignored now.

1267 - PBX dtmf group feature marks dynamic in groups

Ticket #58536. As the PBX dtmf group feature shows all dynamic in and out groups, the displayed name of dynamic in groups will be preceeded with '* ' now.

1290 - PBX: Don't apply Send Number to Recording calls

Ticket #58878. For recording it is usually needed to know the real number

1297 - Potential trap if routes with DTMF output combined with pause chars (',') are used for calls without channel or out-of-channels

Ticket #59012. In this situation pause digits are passed to a channel, which does not exits. This causes the trap.
Could also be dialed pause characters on a call-independent signaling.

1289 - send PROGRESS after CALL-PROC to stop 10s T310

Ticket #58839. sometimes too short to forward a call

1236 - SIP: Suppress Annex B of G.729 if "Silence Compression" is not enabled at the interface

Ticket #57540. Suppress Annex B of G.729 if "Silence Compression" is not enabled at the interface

1159 - T.38 doesnt work if the call is transferred from a IP-Phone to a fax device

Ticket #55569. Affects IP2x IP30x fax gateways, the ipphone needs no update

1295 - Trap on CF remove while files are deleted

Ticket #58984. When files are deleted from the CF card and the card is removed or has an error, the box could trap.

1266 - trap on late CHANNEL_INIT to relay_media_relay::serial_event()

Ticket #58524. A null pointer was referenced when a CHANNEL_INIT was passed to an object in closing state

V7 Hotfix23

1310 - H.323 slowstart avoid sending duplicate TerminalCapabilitySet messages

Ticket #59203. If a media re-negotiation happened on a remote system at a time the local H.245 channel was not even established, it could happen that a sequence of TCS, TCS0 and TCS again was sent to a calling system. This irritated especially a Cisco Call Manager.

This happened for example, if a call was received from the call manager on one PBX, which was routed to another PBX on which a CFNR was configured.

1311 - H.323 Slowstart media renegotiation did not work if TCS was not yet received

Ticket #59248. This caused a CFNR not being executed (call was cleared on the original called endpoint, but was not sent to new destination) for calls from Cisco Call Manager

1316 - H.323-Q.931-Interworking - display text provided in the Display Information Element of an ISDN Information Message on phone

Ticket #59506. The text provided in the Display Information Element of an ISDN Information Message was silently discarded. Now it is displayed in the phone status line.

1304 - H.323: Don't send a call-independent-signaling call without facilities

Ticket #59088. This could happen if a QSIG call was interworked, with facilities we do not support

1296 - Interworked Control-Calls without Facilities Shall Stop in Relay

Ticket #59009. Interworked Control-Calls without Facilities Shall Stop in Relay

1323 - PBX: Call was possible from registration as standby PBX

Ticket #59844. A standby PBX registers at the active PBX to check if it is alive. This registration could be misused for calls. It could be done with H.323 and SIP. This fix prohibits calls from this registration and allows registration with H.323 only

1321 - Phone IP150 - dialling numbers containing asterisks '*' does not work

Ticket #59768. if in offhook mode the asterisk key is pressed for a short time the key is ignored, if it is pressed longer it is evaluated as mute key.

1314 - Qsig, apply interface maps to ccRequest.numberA, ccRequest.numberB

Ticket #59407. Qsig, apply interface maps to ccRequest.numberA, ccRequest.numberB

1308 - send PROGRESS after CALL-PROC to stop 10s T310 - in ISDN Stack not PBX

Ticket #59195. sending PROGRESS in the PBX could have some unwanted side effects, like a Cisco Callmanager believing that there is actual in-band media available

1319 - SIP: Media negotiation problem in some early media scenarios

Ticket #59711. SIP/H323 interworking problem.
Call was terminated with "504 Server Time-out" and "Recovery on timer expiry (102)"

1315 - SNMP, ifSpeed wrong

Ticket #59504. SNMP, ifSpeed wrong

V7 Hotfix24

1336 - Gateway: Trap on early RELEASE from calling side

Ticket #60400. Trap when Notification Indicator is received with ALERT while peer call is released already.

1335 - PBX: Slave license update period too short

Ticket #60390. was 100s (v8) or 10s (v7) should be 10min

1344 - possible trap with enabled trace flag on CF checkdisc

Ticket #60513. The box could trap while checking the card, if the trace flag for CF0 was enabled.

V7 Hotfix25 (70300.37)

1367 - Calls redialled from call list were not set up with CLIR although CLIR was active for the original call

Ticket #61321. The CLIR setting of the original call was saved in the call list but not applied when the call was redialled from list.

1362 - Phone: Memory leak when deleting SIP registration

Ticket #61132. Failed to delete registration, but only if trying to delete during state "rgistration failed due to no response from server".

1383 - Qsig Leg2 Info decoding could fail

Ticket #61860. Qsig Leg2 Info decoding could fail

1364 - SIP: Bug in handling of re-direct responses

Ticket #61264. New remote port was not respected when maddr parameter was present in redirection URI.
E.g.

sip:662@10.0.77.46:4432;user=phone;transport=Tcp;maddr=10.0.77.46;x-mss-call-id=a515c882e909d311874700903306177f%4010.0.77.70

1371 - SIP: No overlap sending if 'sending complete' was declared

Ticket #61472. Do not start overlapping INVITE transaction for new dialing digit if 'sending complete' was indicated for the call.

1361 - SIP: Read PAI/PPI header when receiving MESSAGE request

Ticket #61086. Read PAI/PPI header when receiving MESSAGE request in order to get calling party identity

1360 - SIP: Trap when receicing provisional response for obsolete INVITE

Ticket #61035. In overlap dialing scenarios overlapping INVITE client transactions are used.
Same Call-ID, different CSeq and different To-URI.

V7 Hotfix26 (08-70300.38)

1413 - Diagnostic/Tracing on IP6000: Trace flag on TEL could not be cleared

Ticket #62914. once set, it could only be cleared with a !config change command

1396 - General btree library problem: Potential Trap if many outgoing registrations need to be retried

Ticket #62428. Actually the problem is in the commonly used btree library, but there are not that many cases in which the libray is used in a way that create the problem

1397 - PBX Waiting: Limited DTMF targets could be added using Internet Exporer

Ticket #62432. URL size limitiation of IE -> use POST instead

1407 - Possible trap on certain compact flash operations

Ticket #62703. There has been the possibility of a trap on certain compact flash file operations.
This trap has been fixed.

1409 - RPCAP uses system time instead of uptime now

Ticket #62745. A wireshark capture with RPCAP will now receive packet timestamps with the system time and not the uptime anymore.

1399 - SIP: Media negotiation failed when interworking with H.323

Ticket #62439. When calling from H323 to a user with multiple registrations
and the called user accepts on one of its (SIP type) secondary registration,
the media negotiation can fail.

V7 Hotfix27 (70300.46)

1429 - DECT: GUI password input limit info

Ticket #63349. The user password is truncated to 15 signs. Now the input field is limited and an info is shown.

1442 - DECT: Radio firmware for new handsets

Ticket #63577. The new radio firmware PCS05Ah accepts new handsets with the new IPEI number range.

1414 - H.323: Don't send a call-independent-signaling call without facilities and user-user information

Ticket #62961. This fix is related to the fix #59088.
A call-independent-signaling call without facilities should not be sent, but if it has got a user-user information, it should be sent.
This fixes the DECT messaging problem on the IP1200.

1438 - HTTP-Client: Bad encoding of uri parameter in digest authentication

Ticket #63469. Uri parameter in digest authentication was not URL encoded

1418 - HTTP-Server: Closing connection after transaction causes trouble with Webdav client

Ticket #63045. NetDrive client fails when uploading files

1470 - SIP: Allocated message size to small for INVITE redirect response (Avaya)

Ticket #63829. Memory allocation is a bit to tight to fit the message due to many Via headers.

INVITE sip:3003@192.168.150.140:2059;transport=UDP SIP/2.0
Record-Route: <sip:5793d7f@192.168.150.115;transport=udp;lr>
Record-Route: <sip:192.168.150.114:15060;lr;sap=315810451*1*016asm-callprocessing.sar1905633216~1304428214402~-1054885358~1>
Via: SIP/2.0/UDP 192.168.150.115;rport;branch=z9hG4bKC0A896726E7526620194612-AP;ft=192.168.150.115~13c4
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526620194612
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194610
Via: SIP/2.0/UDP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194609
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bK0e2106b7388e016424db9a29200-AP;ft=11786
Via: SIP/2.0/TCP 192.168.150.118;branch=z9hG4bK0e2106b7388e016424db9a29200;avaya-cm-term-reaction=shortcut
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bKC0A896726E7526620194608-AP;ft=12651
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526620194608
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194606
Via: SIP/2.0/TCP 192.168.150.114:15070;branch=z9hG4bKC0A896726E7526621194605
Via: SIP/2.0/TCP 192.168.150.115;branch=z9hG4bK0e2106b7388e018424db9a29200-AP;ft=11786
Via: SIP/2.0/TCP 192.168.150.118;branch=z9hG4bK0e2106b7388e018424db9a29200
Via: SIP/2.0/TCP 192.168.150.84;branch=z9hG4bK200_f1774512c29cc2e5cd78966_I2371
User-Agent: Avaya one-X Deskphone AVAYA-SM-6.1.1.0.611023 Avaya CM/R016x.00.1.510.1
Record-Route: <sip:5793d7f@192.168.150.115;transport=tcp;lr>
Record-Route: <sip:192.168.150.114:15060;transport=tcp;lr;sap=315810451*1*016asm-callprocessing.sar1905633216~1304428214355~-1054885362~1>
Record-Route: <sip:5793d7f@192.168.150.115;transport=tcp;lr>
Record-Route: <sip:192.168.150.118;transport=tcp;lr>
Session-Expires: 1800;refresher=uac
Content-Type: application/sdp
Content-Length: 215
...

1440 - SIP: Message buffer too small for REGISTER request for re-try with authentication

Ticket #63539. On some installations a change-of-nonce at server side may cause volatile "Registration down error" on client side.

1425 - SIP: Trap when session timer is used

Ticket #63271. Trap on collision of session timer and call release

1422 - SNMP, innoColdStart Trap to be sent only after sw failure or button reset

Ticket #63160. Settlement of a feature request to have the innoColdStart SNMP trap indicate severe reboot reasons only.

1415 - TCP: Ack was not sent under special conditions with re-transmissions

Ticket #62965. This could cause the breaking of a TCP connection in case of packet loss, even if the packet loss was not too bad

1416 - Trap when processing webdav requests

Ticket #62980. Trap when webdav request session were terminated irregularly.

1419 - Webdav: Bug when handling GET with Range header

Ticket #63131. When applied on a zero length file this response was returned:

HTTP/1.1 206 Partial Content
Date: Tue, 12 Apr 2011 14:52:23 GMT
Server: innovaphone Virtual Appliance / 9.00 dvl [xxx/1000/0]
Accept-Ranges: bytes
Content-Type: application/octet-stream
Content-Length: 0
Content-Range: bytes 0-4294967295/0

Error response "416 Requested Range Not Satisfiable" must be returned instead.

1420 - Webdav: Don't keep zero-length files open on server side

Ticket #63133. In case of large files, NetDrive performes GET operation between PUT0 and PUT.
The actual PUT was rejected with 500 error resonse then.

V7 Hotfix28

1637 - buffer overflow in fat32 method

Ticket #65344. The borders of a static buffer has been exceeded.

1499 - Media negotiation problem H.323 to SIP call, with reverse Media and media relay

Ticket #64124. a call without Media in both directions could be the result

1620 - SIP-H323 calls with SRTP: No media after multiple Hold/Retrieve

Ticket #65185. After first Hold/Retrieve there was no SRTP, after the next Hold/Retrieve very often no media

1531 - supress "Send Number" for calls triggered by a 'Dial' function key with 'Send as Control Call' checked

Ticket #64365. When using a 'Dial' function key with 'Send as Control Call' checked to control a call recording device the unique original calling party number must be passed to the recorder. The 'Send Number' configured in the the PBX user object may be the same for a group of phones and does not identify a certain phone.

1569 - TLS: Error on processing huge handshake messages

Ticket #64702. The current implementation does not work with handshake messages that are bigger than 8 kilobytes. Especially the CertificateRequest message that is used for MTLS can be bigger.

files: tls.cpp

V7 Hotfix29

8618 - Fax: Wrong decoding of T.38 error recovery IFP packet

The T.38 error recovery IFP packet is wrongly decoded. It can occur if a T.38 UDP frame is lost or swapped and can result in aborted fax connections. This is fixed now.

1584 - Incorrect rpcap timestamp after TRACE LOST messages

Ticket #64915. The RPCAP timestamp (Wireshark) after a TRACE LOST message was incorrect, as the TRACE LOST message contained an incorrect timestamp.

1694 - Message Waiting Interrogation: Result message coding wrong

Ticket #65912. a malformed message was displayed in wireshark

1276 - New flash S29GL256P90/S29GL128P90 on IP1200

Ticket #58643. This flash is used on new IP1200 devices.
Bootcode downgrade to older bootcode is disabled.
If the bootcode is downgraded the bootcode version is shown as 1013.

1695 - phone: disable call intrusion via partner key when recording is active

Ticket #65918. Call intrusion cannot be performed while recording is active:
- recording establishes a 3party conference between local party, remote party and recorder.
- call intrusion establishes a 3party conference between local party and the two remote parties
- recording and call intrusion at the same time would require a 4party conference which cannot be set up because the phone has only 2 DSP coder channels.

Now if any kind of recording is configured call intrusion is neither offered in 'recall' menu nor performed via partner key.

1750 - phone: Hexadecimal values instead of descriptive texts were displayed for some rare disconnect causes

Ticket #66343. "0x57 - unknow cause" was displayed instead of "user not a CUG member". Mainly german descriptive texts were missing.

1697 - SIP: Set CLIR if display string of From-URI contains "Anonymous"

Ticket #65925. Not only if userpart of From-URI contains "anonymous".

1651 - VM, Project script didn't run for endpoints having "Send Number" configured

Ticket #65456. VM, Project script didn't run for endpoints having "Send Number" configured

V7 Hotfix30 (70300.49)

1771 - Gateway: Trap in case of collision of hold and clearing from remote

Ticket #66642. This could happen on gateways with analog interfaces if the R-Key was pressed right when the other side hung up

V7 Hotfix31 (70300.50)

1847 - H.323 Malformed packet

Ticket #67803. The ASN.1 encoder had a bug under one special condition: For a constrained character string with a maximum length of more or equal to 16bits, with an effective length of zero, the padding for octett alignment was missing for the zero length bitfield containing the string.

In H.323 this only happens for the CallIdentity used for H.450 call transfer message in case of blind transfer without consultation.

This fix breaks compatibility with earlier versions, for this reason this fix is available for version 9,8,7 and 6.

If phones and PBX with versions containing and not containing this fix are mixed the following problems will occur:
- A blind transfer without consultation (initiated with the redial key) is not possible
- A call which was transfered without consultation is not displayed at the transfered-to phone as transfered

1846 - H.323: A name_id of length 0 resulted in invalid H.450 coding

Ticket #67796. An empty name identification received was forwarded in H.323 as invalid H.450. Such a name is now forwarded as 'name not available'.

1891 - phone: intrusion call started in handset mode is not terminated when going on hook when TAPI or operator run on PBX

Ticket #68249. With TAPI or operator running on the PBX the the signaling of a busy condition is changed such that a disconnect instead of a release is sent. The disconnect was not handled correctly, the hookswitch state was lost and the next on-hook signal was ignored. TThus teh call could be terminated with the disc-key only.

V7 Hotfix32 (70300.51)

1936 - H.450: Bad encoding of DivertingLegInformation4 arguments

Ticket #68868. DivertingLegInformation4 content coding was wrong.
Wireshark displayed it as malformed.

Note:
This fix causes interoperability problem with phones with older (non-fixed) firmware versions!
Phones also require an updated firmware if PBX is updated.

1957 - ISDN interop issue with SecuGATE LI 30 from Sirrix

Ticket #69168. The SecuGATE LI30 is sending/receiving ISDN INFO messages in Call Proceeding State (State 3 and state 9), which was not supported

1982 - PBX: Reject calls without media, if no known facility

Ticket #69477. Fixes compatibility issues between versions. For example presence subscription sessions from v8 phones being forwarded to voicemail

1929 - Phone: Changing config option /sip-hold does not call for reset

Ticket #68691. Reset is required and 'reset required" must be displayed.

1966 - SIP: NOTIFY sent after 302 moved temporarily

Ticket #69282. After processing "302 moved temporarily" on an outbound call a NOTIFY (sipfrag) was sent.

2009 - SIP: Trap when handling NOTIFY(application/qsig)

Ticket #69771. Traps if no progress indicator present in tunneled DISCONNECT message.

V7 Hotfix33 (70300.52)

2047 - Gateway: Forward Display Info received from ISDN Setup to H.323

Ticket #70562. needed for compatibility with SecuGATE LI30

2090 - H.323: Call Intrusion H.450 facility coding error

Ticket #71456. generated interop problem with v8 and higher

2115 - phone: display info provided by SETUP or CONNECT was ignored

Ticket #71727. only the display info provided by an INFO event was handled

V7 Hotfix34 (70300.53)

2222 - PBX: Forward original received ISDN display element to picking up or forwarded call

Ticket #73278. In the display element from ISDN there could be vital information from equipment like crypto gateways. This should be available also if the call was picked or forwarded.

2143 - Scheduling improved to avoid processes not being scheduled during long flashman operations

Ticket #72243. In version 7 it could happen, that IP and other processes were not scheduled any more during periods of long flashman operations (e.g. bootcode update or reorganizing flash).

In version 8 and higher there was already a fix for this problem, but this included special handling of the flashman priority level, which was not a good solution even if it worked.

2138 - TCP: Roundtrip measurement wrong in case of packet loss

Ticket #71985. In case of packet loss, way to high round trip values were measured. If the packet-loss was to high, this could result in a constantly increasing re-transmission timeout value.

2180 - update - scfg command could hang when the HTTP session was broken or prematurely closed by the server

Ticket #72708. in consequence update script processing was stopped until reboot

V7 Hotfix35 (70300.54)

2396 - Gateway: Conference interface, no voice

Ticket #76419. The ADSP firmware is changed to version 122. This fixes a bug in the conference interface of IP6000/IP6010/... which results in conference calls without voice in one direction for a single member.

2330 - TLS: Duplicate alert message on malformed ClientHelloV2

Ticket #75509. Only one alert should be sent per session.

2303 - TLS: Flow control for incoming data

Ticket #75004. The TLS socket has to wait for the application to process incoming data before sending the next RECV.

2331 - TLS: Improved negotiation of protocol version

Ticket #75510. TLS server unnecessarily rejected ClientHello messages with TLS 1.1 and higher. Instead of rejecting it should tell the client that it wants to use TLS 1.0.

2332 - TLS: Skip empty records

Ticket #75511. TLS record layer should ignore records with zero length without doing anything.

2310 - VM: <pbx-upd-obj type="cfu"..> without effect when invoked multiple times

Ticket #75121. Statement <pbx-upd-obj type="cfu"..> failed to work properly after being used for diversion manipulation multiple times within a single script session.

V7 Hotfix36 (70300.55)

2397 - Avoid Snmp decode error trace outputs

Ticket #76435. Avoid Snmp decode error trace outputs when receiving requests > SNMPv1

2439 - IPVA, IP800, IP6000, IP6010: Typo RT30 instead of RT40

Ticket #77027. The routing table entry RT30 was duplicate and RT40 was missing. This causes config changes to be lost if more then 29 routes are configured

V7 Hotfix37 (70300.56)

2507 - TLS flow control damaged in versions 7 and 8

Ticket #78377. The following fix was not good:
#75004: TLS: Flow control for incoming data

Therefore TLS did not work correctly in the following releases:
v7hotfix35 and v7hotfix36
v8hotfix23 and v8hotfix24

No problem in version 9.

V7 Hotfix38 (70607)

2628 - IP6000/IP800: New DSP code to solve fax interop issue

Ticket #79785. Update to DSP code 600.04 and the dsp driver/headerfiles as in version 8

V7- End of life