- Sep 29, 2020
- Aug 24, 2020
-
-
Rye Mutt authored
-
- Apr 09, 2020
-
-
Nat Goodspeed authored
Apparently, in previous Boost versions, boost::noncopyable was sneaking into the namespace via other headers. Now the compiler complains about its absence without an explicit #include.
-
- Apr 14, 2017
-
-
Oz Linden authored
Id rather than sha1 hash, since that is rarely used in modern certs. The previous form was storing trusted certs using an empty sha1 hash value as the key, which meant most certificates matched... not good. Modify the LLCertException to pass certificate information back as LLSD rather than an LLPointer<LLCertificate>, because when the exception is being thown from the certificate constructor that results in one of a couple of other exceptions (even refcounting won't save you when the problem is that the thing you're pointing to never finished coming into being properly). Update the certificates in the llsechandler_basic_test to modern conventions, and extend the classes to allow for an optional validation date so that the test can use a fixed date. Also make all the certificates include the plain text form for ease of reference.
-
- Dec 19, 2016
-
-
Nat Goodspeed authored
Turns out that Monty didn't intend for the int-flavored representation of HttpStatus to expand to 64 bits even when unsigned long is that wide. So change the implicit conversion operator, and its uses, to U32 instead. That produces a consistent toHex() result for both 32-bit and 64-bit builds.
-
- Nov 10, 2015
-
-
Oz Linden authored
-
- Oct 16, 2015
-
-
Rider Linden authored
MAINT-5271: Converted internal pointers to internal operation to managed shared pointers. Removed direct cast and dereference of handles.
-
- Sep 21, 2015
-
-
Rider Linden authored
-
- Sep 15, 2015
-
-
Rider Linden authored
-
- Apr 08, 2015
-
-
Rider Linden authored
Event polling as a coroutine. (incomplete) Groundwork for canceling HttpCoroutineAdapter yields.
-
- Mar 27, 2015
-
-
Rider Linden authored
-
- Mar 25, 2015
-
-
Rider Linden authored
Prep for some slight cleanup of the code. Add AP_AVATAR Policy
-
- Mar 23, 2015
-
-
Rider Linden authored
-
Rider Linden authored
-
Rider Linden authored
-
- Mar 16, 2015
-
-
Rider Linden authored
-
- Sep 24, 2013
-
-
Monty Brandenberg authored
Start using DNS cache in legacy LLCurl code. Go to 15 seconds particularly as we're using threaded resolver at this point. Documentation cleanup. Add libcurl status checking and logging for curl_easy_setopt() operations that fail. Shouldn't happen and we'll just continue anyway but there's info in the logs to track these down now. Cleaned up logic around FASTTIMER enable defines used to evaluate pipeline stalls in main thread. Removed long-standing thread race around caps strings and URL construction. Not a significant risk but refactoring the code to get rid of them removed one huge eyesore. It can be made even slicker if desired (see notes).
-
- Sep 11, 2013
-
-
Monty Brandenberg authored
Added toTerseString() conversion on HttpStatus to generate a string that's more descriptive than the hex value of the HttpStatus value but still forms a short, searchable token (e.g. "Http_503" or "Core_7"). Using this throughout the viewer now, no live cases of toHex(), I believe.
-
- Jul 12, 2013
-
-
Monty Brandenberg authored
Much improved. Unified the global and class options into a single option list. Implemented static and dynamic setting paths as much as possible. Dynamic path does require packet/RPC but otherwise there's near unification. Dynamic modes can't get values back yet due to the response/notifier scheme but this doesn't bother me. Flatten global and class options into simpler struct-like entities. Setter/getter available on these when needed (external APIs) but code can otherwise fiddle directly when it knows what to do. Much duplicated options/state removed from HttpPolicy. Comments cleaned up. Threads better described and consistently mentioned in API docs. Integration test extended for 503 responses with Reply-After headers.
-
- May 06, 2013
-
-
Monty Brandenberg authored
Not certain what the source of the short data is with one resident but I'm going to make these problems retryable as they are transport-related. Lift the retry detection into a method that should be reusable by others interested in determining what is retryable. Trace output handling on the libcurl debug callback was attrocious. Some unsafe length handling on my part was protected by a second layer of defense. Made that correct and more useful by logging actual data sizes during trace.
-
- Mar 29, 2013
-
-
Graham Madarasz authored
-
- Jul 23, 2012
-
-
Monty Brandenberg authored
Add to-do list to _httpinternal.h to guide anyone who wants to pitch in and help.
-
- Jul 16, 2012
-
-
Monty Brandenberg authored
When releasing HTTP waiters, avoid unnecessary sort activity. For Content-Type in responses, let libcurl do the work and removed my parsing of headers. Drop Content-Encoding as libcurl will deal with that. If anyone is interested, they can parse.
-
- Jul 07, 2012
-
-
Monty Brandenberg authored
Also added some comments and changed the callback userdata argument to be an HttpOpRequest rather than a libcurl handle. Less code, less clutter.
-
- Jun 08, 2012
-
-
Monty Brandenberg authored
surprised me. Added a retry queue similar to ready queue to the policy object which is sorted by retry time. Currently do five retries (after the initial try) delayed by .25, .5, 1, 2 and 5 seconds. Removed the retry logic from the lltexturefetch module. Upped the waiting time in the unit test for the retries. People won't like this but tough, need tests.
-
- Jun 06, 2012
-
-
Monty Brandenberg authored
Implemented first global policy definitions to support SSL CA certificate configuration to support https: operations. Fixed HTTP 206 status handling to match what is currently being done by grid services and to lay a foundation for fixes that will be a response to ER-1824. More libcurl CURLOPT options set on easy handles to do peer verification in the traditional way. HTTP POST working and now reporting asset metrics back to grid for the viewer's asset system. This uses LLSD so that is also showing as compatible with the new library.
-
- Jun 01, 2012
-
-
Monty Brandenberg authored
Identified and reacted to the priority inversion problem we have in texturefetch. Includes the introduction of a priority_queue for the requests that are ready. Start some parameterization in anticipation of having policy_class everywhere. Removed _assert.h which isn't really needed in indra codebase. Implemented async setPriority request (which I hope I can get rid of eventually along with all priorities in this library). Converted to using unsigned int for priority rather than float. Implemented POST and did groundwork for PUT.
-
- May 23, 2012
-
-
Monty Brandenberg authored
This is the first functional viewer pass with the HTTP work of the texture fetch code performed by the llcorehttp library. Not exactly a 'drop-in' replacement but a work-alike with some changes (e.g. handler notification in consumer thread versus responder notification in worker thread). This also includes some temporary changes in the priority scheme to prevent the kind of priority inversion found in VWR-28996. Scheme used here does provide liveness if not optimal responsiveness or order-of-operation. The llcorehttp library at this point is far from optimally performing. Its worker thread is making relatively poor use of cycles it gets and it doesn't idle or sleep intelligently yet. This early integration step helps shake out the interfaces, implementation niceties will be covered soon.
-
- May 08, 2012
-
-
Monty Brandenberg authored
while allocating the first easy handle in a descent of the global initiailization code but that doesn't seem to be a problem on TC machines. Perhaps the static linking is creating multiple data copies. More work needed.
-
- May 07, 2012
-
-
Monty Brandenberg authored
boost::thread and the easiest path to that was to go with the 1.48 Boost release in the 3P tree (eliminating a fork for a modified 1.45 packaging). One unit test, the most important one, is failing in test_httprequest but that can be attended to later. This test issues a GET to http://localhost:2/ and that is hitting the wire but the libcurl plumbing isn't delivering the failure, only the eventual timeout. An unexpected change in behavior.
-
- Apr 26, 2012
-
-
Monty Brandenberg authored
Bring llcorehttp into the compile and link phases. Windows looks okay though it's a dead library so far.
-
- Apr 23, 2012
-
-
Monty Brandenberg authored
The unit/integration tests don't work yet as I'm still battling cmake/autobuild as usual but first milestone passed.
-