Hi All,
Our server-application (is using SCTP 1.0.5
libarary) is multi threaded.
As suggested i have used semaphore locking in
application, following are the places where locking and unlock is
called:
1) sctp_send_private function -> This function
sends the packet to client-application
The snap shot were lock
and unlock is added is given below:
lockSempahore ()
se_ulp_send ()
unlockSemaphore ()
2) adl_extendedEventloop -> This
function pools on fd to receive the SCTP packets from the
client-application
The snap shot were lock
and unlock is added is given below:
lockSemaphore ()
dispatch_event ()
unlockSemaphore ()
3) adl_extendedEventloop -> when there is no
event dispatch_timer is getting called.
The snap shot were lock
and unlock is added is given below:
lockSemaphore ()
dispatch_timer ()
unlockSemaphore ()
Even with this changes the server-application is
dumping, when checking the tsn values in the lists.
Is the approach what i have followed for locking in
application is correct or not?
Please suggest me if i have missed out the locking
in some critical sctp library functions.
Is it required we have to call lock functions where
the packets are checked for which they were no "SACK". Please guide
me.
Regards
Nigar
|
Archive powered by MHonArc 2.6.19+.