summaryrefslogtreecommitdiff
path: root/indra/llmessage/llcurl.cpp
AgeCommit message (Collapse)Author
2011-10-14b782a75c99e6 backout cleanupDave Parks
2011-10-14Merge backout of b782a75c99e6Dave Parks
2011-10-14Backed out changeset b782a75c99e6Dave Parks
2011-09-19SH-2445 Potential fix for crash in LLCurl::Multi::~Multi -- lock sMultiMutex ↵Dave Parks
around curl_multi_ calls in LLCurl::Multi destructor
2011-09-13STORM-1562 Potential fix for crash in LLCurl::run -- don't run ↵Dave Parks
curl_multi_perform from multiple threads simultaneously.
2011-09-07Merge. Fixed issue with LLProxy code related to changes to the LLSocket ↵Logan Dethrow
interface.
2011-09-06Renamed LLCurl::check_curl_code() and LLCurl::check_curl_multi_code() to ↵Logan Dethrow
prevent ambiguous name build error.
2011-09-06LLProxy code review fixes.Logan Dethrow
* Removed check_curl_code and check_curl_multi_code from the global namespace. * Added comments documenting which thread the public methods of LLProxy should be called from. * Corrected grammar in LLSingleton.h * Fixed a buffer scope problem in llpacketring.cpp.
2011-09-01LLProxy start of code review cleanup.Logan Dethrow
2011-08-31MergeXiaohong Bao
2011-08-18Backed out revision cbc793dcd3db to disable libcurl verbose logging.Logan Dethrow
2011-08-15Back out later: Turned on curl verbose logging for debugging purposes.Logan Dethrow
2011-08-08mergeLogan Dethrow
2011-08-02SH-2183 Thread local storage initialization is unreliable.Dave Parks
2011-08-02SH-2183 Only apply multi-threaded curl on the main thread.Dave Parks
2011-08-01SH-2183 Add a debug setting to control whether or not to use multiple ↵Dave Parks
threads in LLCurl
2011-07-28MergeLogan Dethrow
2011-07-28SH-2183 Fix for multi-threaded curl not playing nice with mesh upload.Dave Parks
2011-07-25merging latest viewer-development to mesh merge candidate.Nyx (Neal Orman)
2011-07-22SH-2031 Fix for sometimes deadlocking a curl thread.Dave Parks
2011-07-22SH-2031 Cleanup from threaded curl implementation (remove errors/loops on ↵Dave Parks
shutdown).
2011-07-21SH-2031 Followup to curl threading work -- don't start and stop the thread ↵Dave Parks
on every request, use a signal (cuts time spent in Pump IO down from 1-2 ms to 0.1ms)
2011-07-21SH-2031 Don't do network I/O from the main thread in llcurl.Dave Parks
Reviewed by Kelly
2011-07-19STORM-1112 Added LLProxy::applyProxySettings() to apply proxy settings to ↵Logan Dethrow
curl handles. Added call to that function everywhere curl handles are created in the viewer.
2011-07-15Merge from viewer-developmentXiaohong Bao
2011-07-13Code cleanup for the SOCKS 5 proxy viewer.Logan Dethrow
2011-07-13STORM-1112 Fixed network buffers that need to have space for the SOCKS proxy ↵Logan Dethrow
header.
2011-06-28STORM-1112 More cleanup of SOCKS 5 proxy code.Logan Dethrow
Renamed llsocks5.cpp to llproxy.cpp.
2011-06-21Refactored SOCKS 5 handshake to use existing LLSocket class.Logan Dethrow
2011-06-20fix for SH-1870: can not upload book_collection_1.dae when include texturesXiaohong Bao
2011-06-08Merged STORM-1112 with viewer-development. Fixed license in socks5.cpp and ↵Logan Dethrow
socks5.h.
2011-05-12mergeDave Parks
2011-05-04EXP-772 -- Log in failure, keeps saying DNS cannot resolve hostname.Leslie Linden
No real progress on this Jira yet but Mac build was not properly reporting the CURL error string. This check-in fixes that. So far, I have backed out URL related changes between 2.6.2 and 2.6.3 without any change in behavior. Unsure how to proceed next although comparing libcares and libcurl builds between 2.6.2 and 2.6.3 seems like it could be the next logical step. Users experiencing the problem can go back to vewere 2.6.2 or adjust DNS settings to use the google free DNS servers 8.8.8.8 and 8.8.4.4 which should allow them to work around the problem. Reviewed by Richard.
2011-03-28VWR-20801 Implement SOCKS 5 Proxy for the viewerRobin Cornelius
2011-02-11SH-813 Switch llerrs in llcurl.cpp to an assert.Dave Parks
2011-02-05Introduces a LLThreadLocalData class that can beAleric Inglewood
accessed through the static LLThread::tldata(). Currently this object contains two (public) thread-local objects: a LLAPRRootPool and a LLVolatileAPRPool. The first is the general memory pool used by this thread (and this thread alone), while the second is intended for short lived memory allocations (needed for APR). The advantages of not mixing those two is that the latter is used most frequently, and as a result of it's nature can be destroyed and reconstructed on a "regular" basis. This patch adds LLAPRPool (completely replacing the old one), which is a wrapper around apr_pool_t* and has complete thread-safity checking. Whenever an apr call requires memory for some resource, a memory pool in the form of an LLAPRPool object can be created with the same life-time as this resource; assuring clean up of the memory no sooner, but also not much later than the life-time of the resource that needs the memory. Many, many function calls and constructors had the pool parameter simply removed (it is no longer the concern of the developer, if you don't write code that actually does an libapr call then you are no longer bothered with memory pools at all). However, I kept the notion of short-lived and long-lived allocations alive (see my remark in the jira here: https://jira.secondlife.com/browse/STORM-864?focusedCommentId=235356&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-235356 which requires that the LLAPRFile API needs to allow the user to specify how long they think a file will stay open. By choosing 'short_lived' as default for the constructor that immediately opens a file, the number of instances where this needs to be specified is drastically reduced however (obviously, any automatic LLAPRFile is short lived). *** Addressed Boroondas remarks in https://codereview.secondlife.com/r/99/ regarding (doxygen) comments. This patch effectively only changes comments. Includes some 'merge' stuff that ended up in llvocache.cpp (while starting as a bug fix, now only resulting in a cleanup). *** Added comment 'The use of apr_pool_t is OK here'. Added this comment on every line where apr_pool_t is correctly being used. This should make it easier to spot (future) errors where someone started to use apr_pool_t; you can just grep all sources for 'apr_pool_t' and immediately see where it's being used while LLAPRPool should have been used. Note that merging this patch is very easy: If there are no other uses of apr_pool_t in the code (one grep) and it compiles, then it will work. *** Second Merge (needed to remove 'delete mCreationMutex' from LLImageDecodeThread::~LLImageDecodeThread). *** Added back #include <apr_pools.h>. Apparently that is needed on libapr version 1.2.8., the version used by Linden Lab, for calls to apr_queue_*. This is a bug in libapr (we also include <apr_queue.h>, that is fixed in (at least) 1.3.7. Note that 1.2.8 is VERY old. Even 1.3.x is old. *** License fixes (GPL -> LGPL). And typo in comments. Addresses merov's comments on the review board. *** Added Merov's compile fixes for windows.
2011-02-03SH-580 FIXED Crash in curl on exitLoren Shih
New defensive programming added this llerrs trigger. This is worth investigating but not at the top of our priority at the moment. Reverting to llinfos for now as has been done for non-Windows builds already.
2010-11-05BUILDFIX making curl asserts llinfos for non-windows platformsNyx (Neal Orman)
linux curl appears to throw an initialization error once per session after login. Can't hunt it down right now, so making curl asserts llinfos for non-windows platforms. Also added a new assert on curl initialization.
2010-11-04BUILDFIX curl error causes linux build to crash on login.Nyx (Neal Orman)
Switching curl errors from llerrs to llinfos allows the client to continue on its merry way. Will file a jira to follow up later on why the error happens in the first place.
2010-10-19Aggressive error checking in curl.Dave Parks
2010-10-13correct licenses (fix problem with license change merge)Oz Linden
2010-08-13Change license from GPL to LGPL (version 2.1)Oz Linden
2010-08-25mergeDave Parks
2010-07-22EOL added.Palmer
2010-07-22EXT-7145 - Handle http redirects in viewer properly. Didn't work before.Palmer
Reviewed by Bao and Babbage
2010-06-07Merge with render-pipelineDave Parks
2010-06-07EXT-7145: FIXED: make viewer to handle "URL redirect " for http texture.Tofu Linden
Backed out changeset e6feef9704cf to re-introduce Bao's fix
2010-05-24Backed out changeset 57e00f7d4d4fTofu Linden
(was: EXT-7145: FIXED: make viewer to handle "URL redirect " for http texture.) This was causing osx/linux build failure.
2010-05-18EXT-7145: FIXED: make viewer to handle "URL redirect " for http texture.Xiaohong Bao
2010-04-07Re-insert backed out SLE checkin so we can fix itRoxie Linden