summaryrefslogtreecommitdiff
path: root/pjlib/src/pj/ioqueue_symbian.cpp
diff options
context:
space:
mode:
authorNanang Izzuddin <nanang@teluu.com>2009-03-02 15:48:45 +0000
committerNanang Izzuddin <nanang@teluu.com>2009-03-02 15:48:45 +0000
commitc205201320f80d9e25e554566da5b7f11203f871 (patch)
tree9c36ccb99099beae87670633c72e63358c95df80 /pjlib/src/pj/ioqueue_symbian.cpp
parent33e9dc9f2613a86b0fcfea7d669d1b83934d45fd (diff)
Ticket #732:
- Added new Symbian specific API in PJLIB, pj_symbianos_set_connection_status(), to let PJLIB knows the connection status. - Added connection status checks before Symbian socket operations. - Added loop limiter in Symbian busy_sleep() to avoid the possibility of infinite loop. - Added sample of connection monitor in Symbian sample application (ua.cpp). git-svn-id: http://svn.pjsip.org/repos/pjproject/trunk@2481 74dad513-b988-da41-8d7b-12977e46ad98
Diffstat (limited to 'pjlib/src/pj/ioqueue_symbian.cpp')
-rw-r--r--pjlib/src/pj/ioqueue_symbian.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/pjlib/src/pj/ioqueue_symbian.cpp b/pjlib/src/pj/ioqueue_symbian.cpp
index ba4092b9..ee6d7e0d 100644
--- a/pjlib/src/pj/ioqueue_symbian.cpp
+++ b/pjlib/src/pj/ioqueue_symbian.cpp
@@ -635,6 +635,9 @@ PJ_DEF(pj_status_t) pj_ioqueue_connect( pj_ioqueue_key_t *key,
TInetAddr inetAddr;
TRequestStatus reqStatus;
+ // Return failure if access point is marked as down by app.
+ PJ_SYMBIAN_CHECK_CONNECTION();
+
// Convert address
status = PjSymbianOS::pj2Addr(*(const pj_sockaddr*)addr, addrlen,
inetAddr);
@@ -747,6 +750,9 @@ PJ_DEF(pj_status_t) pj_ioqueue_send( pj_ioqueue_key_t *key,
// Forcing pending operation is not supported.
PJ_ASSERT_RETURN((flags & PJ_IOQUEUE_ALWAYS_ASYNC)==0, PJ_EINVAL);
+ // Return failure if access point is marked as down by app.
+ PJ_SYMBIAN_CHECK_CONNECTION();
+
// Clear flag
flags &= ~PJ_IOQUEUE_ALWAYS_ASYNC;
@@ -785,6 +791,9 @@ PJ_DEF(pj_status_t) pj_ioqueue_sendto( pj_ioqueue_key_t *key,
// Forcing pending operation is not supported.
PJ_ASSERT_RETURN((flags & PJ_IOQUEUE_ALWAYS_ASYNC)==0, PJ_EINVAL);
+ // Return failure if access point is marked as down by app.
+ PJ_SYMBIAN_CHECK_CONNECTION();
+
// Convert address
status = PjSymbianOS::pj2Addr(*(const pj_sockaddr*)addr, addrlen,
inetAddr);