Changes from 1.0.1.8 to 1.0.1.10 are as follows:
Changed the networking code so only one thread could be doing
a send or receive with the PABX at any given time , as this could
potentially cause a thread deadlock.
The timeout on the TCP connection to the PABX was increased from
1 second to 10 seconds, as I thought the Ericsson might be busy and
not respond quickly enough.
After sending a barring command, it now reads the PABX response
immediately, to avoid filling up the networking buffers when sending
hundreds of barring commands. Filling up the networking buffers can
cause a TCP deadlock, where each side is waiting for the other to
respond to sent data.
Removed the delay when processing the barring instructions from
the CallBarring service, as this could cause the PABX connection to
timeout, which prevents the barring instructions from being sent at
all.
Fixed a bug where a duplicate entry in the barring instruction
list could cause a thread deadlock (duplicate entries could be caused
by a reconnect to the CallBarring service while processing barring
instructions, which was quite possible due to the delay in processing
barring instructions).