summaryrefslogtreecommitdiff
path: root/indra/llmessage/llcurl.cpp
AgeCommit message (Collapse)Author
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
2010-04-07merge from viewer-trunkTofu Linden
2010-04-07Backed out changeset 63b699f90efdTofu Linden
2010-04-06some fixing from the viewer-trunk merge.Tofu Linden
2010-04-06another hairy merge from viewer-trunk :(Tofu Linden
2010-03-02cleanup from reviewDave Parks
2010-03-02Curl tweaks to get rid of various types of timeouts.Dave Parks
- Scrub host names from capability ips (requires disabling SSL host name verification) - Reset connections that have received a timeout (avoids cascading timeouts from reusing a cached bad connection)
2010-02-24Added lower level pool to curl easy handles to speed up HTTP requests (from ↵Dave Parks
40 ms per request to < 1 ms per request).
2010-02-17Post-review cleanup.Dave Parks
2010-02-17Switched program database on windows to edit and continue for non-release ↵Dave Parks
builds. Adding a debug watch to LLCurlRequest to avoid invalidating iterator on processing posts. Mesh bulk uploading rewrite work in progress. 404 icons for mesh assets.
2010-02-11Multi-threaded asset uploading with proper ordering first draft.Dave Parks
2010-01-20DEV-35248: Allow NoVerifySSLCert to uniformly disable verificationNat Goodspeed
Introduce static LLCurl SSL verification flag, default 'true', accessed by LLCurl::setSSLVerify() and getSSLVerify(). Make LLCurl::Easy::prepRequest() check LLCurl::getSSLVerify() instead of unconditionally setting CURLOPT_SSL_VERIFYPEER 'true'. Also set CURLOPT_SSL_VERIFYHOST to match. Make LLXMLRPCTransaction::Impl::init() examine LLCurl::getSSLVerify(), instead of directly examining gSavedSettings.getBOOL("NoVerifySSLCert"). Make LLURLRequest::checkRootCertificate() set CURLOPT_SSL_VERIFYHOST as well as CURLOPT_SSL_VERIFYPEER. Make request() in llhttpclient.cpp (used by LLHTTPClient::getByteRange(), head(), get(), getHeaderOnly(), put(), post(), postRaw(), postFile(), del(), move()) pass LLCurl::getSSLVerify() to checkRootCertificate(), rather than constant 'true'. Make LLAppViewer::mainLoop() call LLCurl::setSSLVerify(! gSavedSettings.getBOOL("NoVerifySSLCert")) at the same time it calls LLCurl::setCAFile(), a comparable bit of static setup.
2009-11-06merge from texture-pipelineSteve Bennetts
2009-11-06merge QAR-1829: texture pipeline branch in viewer-2.0.0.3Xiaohong Bao
2009-09-08Merge from trunkBryan O'Sullivan
2009-09-04svn merge -r 129999:132607 ↵Don Kjer
svn+ssh://svn/svn/linden/branches/server/server-1.30 into trunk QAR-1863: Merge 525 changes from 1.27 -> 1.30 -> trunk 1.27 Changes: * QAR-1721: Vivox Recurring Billing (ViRB) * QAR-1743: 525 AO Classifieds * DEV-37701: Fix cleanup_indra nightly script so that it doesn't fail, and so that we know if it does * DEV-37926 - Fairmarket key roll 8/12/2009 * QAR-1744: 525 Landstore * QAR-1797: disable web services for find_people * QAR-1758: OpenID and Backup/recovery. * QAR-1794: ViRB proc fix - proc/recurring_billing/GetLocaleCountryByPackageId.php * Changing parameter name so the module signal could be used properly in the function below * QAR-1808 : Self-Reported First Name and Self-Reported Last Name have duplicate entries in the registration table * DEV-30204 : Moved the registration table from sequence to indra_aux. * removed dungeon from banned keyword list * DEV-30204 : Moved the registration table from sequence to indra_aux. Reviewed by kelly, cg, jarv * Merging new streambase dwell nightly to server-1.27 * Add update_parcel_dwell.py to serial_maintenance rule in the nightly.make Makefile, removing the dwell rule, since we don't want it running in parallel with other expensive nightly scripts. 1.30 Changes: * DEV-27476: version-manager only works in Firefox * DEV-27472: version-manager appears to load javascript from third party site. * mulib r92 that supports If-Modified-Since header and prevents arbitrary filesystem access through host:12107/manager/mochi/.. * Trivial conductor change that prevents a traceback when no regions are available to start. * Fixing "Out of Connections" error when running tests via SCUT * DEV-37554 - farm_deploy should get its ssh timeout from farm.ini * undo two lines of debugging changes that accidentally were checked in to farm * Adding MochiKit to MANIFEST for version-manager. * revised files for new parcel dwell process * Changing vault from an 'http' svn extern to a 'svn+ssh' svn extern. * DEV-38504 RPS map item queries are too verbose * added --skip-grid-mode-prompt to main in farm * DEV-38607: Region Presence Service includes disabled regions in estate responses, resulting in high slave query rate. * DEV-34781 - enable use_space_server_for_map_items and set map_item_request throttle settings in simulator.xml * DEV-38351 changes to ip_blacklist.xml file never get automatically picked up by the simulator * DEV-35443 Region border crossing issues. * DEV-35443 revert overzealous validity checking on neighbor messages. * DEV-15998 changing settings to re-enable teleport throttle, following DEV-37200 fix * QAR-1822 CPU Overrides update to indra.xml * DEV-15998 changing settings to re-enable teleport throttle, following DEV-37200 fix * DEV-34026 Update LLAgentInfo::forwardViewerStats() to make all viewer statistics * DEV-38906 Teleport throttle blocks prematurely when agent teleports back and forth between 2 regions * DEV-38861 Intra-region TP is blocked by inter-region TP throttl * DEV-38504 RPS map item queries are too verbose * initial import of deploy_to_dev_grid.sh
2009-07-16Merged work for DEV-2066 (and formerly QAR-1538) in Viewer 2.Mark Palange
merged all changes, post copy, from the following branches: linden/brachnes/enable-o-v user/cg/qar-1538 user/mani/viewer2-enable-o-v
2009-07-08DEV-34822 - merge with 1.23Roxanne Skelly
certificate notification code -r 118191 ignore-dead-branch
2009-04-16svn merge -r117314:117337Adam Moss
svn+ssh://svn.lindenlab.com/svn/linden/branches/moss/mv13a-merge-1 QAR-1343 maint-viewer-13a+libcurlexploitfix-3-3 combo merge
2009-01-08Result of svn merge -r107256:107258 ↵Aaron Brashears
svn+ssh://svn/svn/user/phoenix/license_2009_merge into trunk. QAR-1165
2008-09-29Result of svn merge -r97546:97641 ↵Aaron Brashears
svn+ssh://svn/svn/linden/branches/apache-caps/merge-to-release into release. QAR-824