--- a/genericopenlibs/openenvcore/backend/inc/sysif.h Thu Sep 02 22:16:05 2010 +0300
+++ b/genericopenlibs/openenvcore/backend/inc/sysif.h Fri Sep 17 08:38:54 2010 +0300
@@ -506,7 +506,7 @@
int aselect(int maxfd, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *tvptr, TRequestStatus* requeststatus,int& anErrno);
- int cancelaselect(TRequestStatus* requeststatus,int& anErrno,int performcleanup = 0);
+ int cancelaselect(TRequestStatus* requeststatus, int& anErrno, TBool perform_cleanup = EFalse);
int eselect(int maxfd, fd_set *readfds, fd_set *writefds,fd_set *exceptfds, struct timeval *tvptr, int arraycount,TRequestStatus* waitarray,int& anErrno);
@@ -552,6 +552,7 @@
//Set the default interface for network operations
int setdefaultif(const struct ifreq* aIfReq);
+ int unsetdefaultif(TBool allow_bringup = ETrue);
IMPORT_C CFileDescBase* GetDesc(int aFid);
@@ -669,6 +670,10 @@
RConnection iDefConnection;
//Protect the iDefConnection from concurrent GetDefaultConnection calls
RFastLock iDefConnLock;
+ //Calling unsetdefaultif(), instead of setdefaultif(NULL) ensures that the torn down
+ //connection is not brought back up again, by subsequent socket/network calls.
+ //This variable enables this facility. It is reset to default (ETrue) by setdefaultif(<pref>)
+ TBool iDefConnResurrect;
//Lock for protecting iASelectRequest across threads
RFastLock iASelectLock;