diff --git a/src/ca/udpiiu.cpp b/src/ca/udpiiu.cpp index 4d3fff4a3..24865e78b 100644 --- a/src/ca/udpiiu.cpp +++ b/src/ca/udpiiu.cpp @@ -953,16 +953,6 @@ void udpiiu::removeAllChannels ( epicsGuard < callbackMutex > & ) } } -void udpiiu::pendioTimeoutNotify () -{ - epicsGuard < udpMutex > guard ( this->mutex ); - tsDLIterBD < nciu > chan = this->channelList.firstIter (); - while ( chan.valid () ) { - chan->connectTimeoutNotify (); - chan++; - } -} - bool udpiiu::searchMsg ( unsigned short retrySeqNumber, unsigned & retryNoForThisChannel ) { bool success; @@ -1004,11 +994,12 @@ int udpiiu::printf ( const char *pformat, ... ) return status; } -void udpiiu::uninstallChannel ( epicsGuard < callbackMutex > &, - epicsGuard < cacMutex > &, nciu & chan ) +class tcpiiu * udpiiu::uninstallChanAndReturnDestroyPtr ( + epicsGuard < cacMutex > &, nciu & chan ) { epicsGuard < udpMutex > guard ( this->mutex ); this->channelList.remove ( chan ); + return 0; } void udpiiu::hostName ( char *pBuf, unsigned bufLength ) const @@ -1078,9 +1069,9 @@ void udpiiu::flushRequestIfAboveEarlyThreshold ( epicsGuard < cacMutex > & guard } void udpiiu::blockUntilSendBacklogIsReasonable - ( epicsGuard < callbackMutex > * pCBGuard, epicsGuard < cacMutex > & guard ) + ( cacNotify & notify, epicsGuard < cacMutex > & guard ) { - netiiu::blockUntilSendBacklogIsReasonable ( pCBGuard, guard ); + netiiu::blockUntilSendBacklogIsReasonable ( notify, guard ); } void udpiiu::requestRecvProcessPostponedFlush () diff --git a/src/ca/udpiiu.h b/src/ca/udpiiu.h index 719de13a9..3ad144242 100644 --- a/src/ca/udpiiu.h +++ b/src/ca/udpiiu.h @@ -87,11 +87,9 @@ public: void resetSearchTimerPeriod ( double delay ); void beaconAnomalyNotify (); void removeAllChannels ( epicsGuard < callbackMutex > & cbGuard ); - void pendioTimeoutNotify (); int printf ( const char *pformat, ... ); unsigned channelCount (); - void uninstallChannel ( epicsGuard < callbackMutex > &, - epicsGuard < cacMutex > &, nciu & ); + class tcpiiu * uninstallChanAndReturnDestroyPtr ( epicsGuard < cacMutex > &, nciu & ); bool pushDatagramMsg ( const caHdr &hdr, const void *pExt, ca_uint16_t extsize); // exceptions @@ -164,7 +162,7 @@ private: bool flushBlockThreshold ( epicsGuard < cacMutex > & ) const; void flushRequestIfAboveEarlyThreshold ( epicsGuard < cacMutex > & ); void blockUntilSendBacklogIsReasonable - ( epicsGuard < callbackMutex > *, epicsGuard < cacMutex > & ); + ( cacNotify &, epicsGuard < cacMutex > & ); void requestRecvProcessPostponedFlush (); osiSockAddr getNetworkAddress () const;