diff options
author | Luo Jinghua <sunmoon1997@gmail.com> | 2011-11-27 13:47:49 +0800 |
---|---|---|
committer | Luo Jinghua <sunmoon1997@gmail.com> | 2011-11-27 13:47:49 +0800 |
commit | 0c60f6fa9ab288ac7ca24be6301a7e5a90b4f931 (patch) | |
tree | 68b584a1f9bc8564a7a0fbd89eb193f6e9d5ed02 | |
parent | 4d31be5b63fbda5cb941c3c7d9cd43ad6ace985b (diff) |
SexyAppFramework: Bind to any port in range 11053-11073
-rw-r--r-- | osframework/source/SexyAppFramework/SexyServiceManager.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/osframework/source/SexyAppFramework/SexyServiceManager.cpp b/osframework/source/SexyAppFramework/SexyServiceManager.cpp index 4be057a..19e847b 100644 --- a/osframework/source/SexyAppFramework/SexyServiceManager.cpp +++ b/osframework/source/SexyAppFramework/SexyServiceManager.cpp @@ -308,13 +308,18 @@ bool ServiceManager::initialize() return true; - mSock = new UDPSocket("", 11053); - if (mSock->hasError()) + for (int i = 0; i < 10; i++) { + mSock = new UDPSocket(); + if (!mSock->hasError() && + mSock->setLocalAddressAndPort("", 11053 + i)) + break; + delete mSock; mSock = 0; - return false; } + if (!mSock) + return false; mSock->joinGroup("224.0.0.251"); mDone = false; |