summaryrefslogtreecommitdiff
path: root/indra/llmessage
diff options
context:
space:
mode:
authorRider Linden <rider@lindenlab.com>2018-09-26 13:46:45 -0700
committerRider Linden <rider@lindenlab.com>2018-09-26 13:46:45 -0700
commit78866b33a9f3a44db11a18245e8a37c834297a46 (patch)
treefd5c39a17334de8602ee2f20df020eaaa6e01e55 /indra/llmessage
parent2d5fa7a732661f97b028ddcbabdd4fb3ba825a52 (diff)
parent58aef8beaf79dc83546a7b080014ca5030733ac8 (diff)
Merge
Diffstat (limited to 'indra/llmessage')
-rw-r--r--indra/llmessage/lliosocket.cpp4
-rw-r--r--indra/llmessage/lliosocket.h4
-rw-r--r--indra/llmessage/lltransfermanager.cpp4
3 files changed, 8 insertions, 4 deletions
diff --git a/indra/llmessage/lliosocket.cpp b/indra/llmessage/lliosocket.cpp
index b7460df508..b15b98db80 100644
--- a/indra/llmessage/lliosocket.cpp
+++ b/indra/llmessage/lliosocket.cpp
@@ -101,7 +101,7 @@ void ll_debug_socket(const char* msg, apr_socket_t* apr_sock)
///
// static
-LLSocket::ptr_t LLSocket::create(apr_pool_t* pool, EType type, U16 port)
+LLSocket::ptr_t LLSocket::create(apr_pool_t* pool, EType type, U16 port, const char *hostname)
{
LLSocket::ptr_t rv;
apr_socket_t* socket = NULL;
@@ -150,7 +150,7 @@ LLSocket::ptr_t LLSocket::create(apr_pool_t* pool, EType type, U16 port)
apr_sockaddr_t* sa = NULL;
status = apr_sockaddr_info_get(
&sa,
- APR_ANYADDR,
+ hostname,
APR_UNSPEC,
port,
0,
diff --git a/indra/llmessage/lliosocket.h b/indra/llmessage/lliosocket.h
index f840f0275c..303d80eb14 100644
--- a/indra/llmessage/lliosocket.h
+++ b/indra/llmessage/lliosocket.h
@@ -96,12 +96,14 @@ public:
* and associated with the socket.
* @param type The type of socket to create
* @param port The port for the socket
+ * @param hostname e.g. APR_ANYADDR to listen openly, or "127.0.0.1"
* @return A valid socket shared pointer if the call worked.
*/
static ptr_t create(
apr_pool_t* pool,
EType type,
- U16 port = PORT_EPHEMERAL);
+ U16 port = PORT_EPHEMERAL,
+ const char *hostname = APR_ANYADDR);
/**
* @brief Create a LLSocket when you already have an apr socket.
diff --git a/indra/llmessage/lltransfermanager.cpp b/indra/llmessage/lltransfermanager.cpp
index ec7b21d8b6..452b77fb6d 100644
--- a/indra/llmessage/lltransfermanager.cpp
+++ b/indra/llmessage/lltransfermanager.cpp
@@ -62,9 +62,11 @@ LLTransferManager::LLTransferManager() :
LLTransferManager::~LLTransferManager()
{
+ // LLTransferManager should have been cleaned up by message system shutdown process
+ llassert(!mValid);
if (mValid)
{
- LL_WARNS() << "LLTransferManager::~LLTransferManager - Should have been cleaned up by message system shutdown process" << LL_ENDL;
+ // Usually happens if OS tries to kill viewer
cleanup();
}
}