Commit Graph

271 Commits (09dc92b2644f34d3900a161b2617d2fdbb089255)

Author SHA1 Message Date
Brad Kittenbrink 6f9ea467c2 SL-10948: Fix for crash in llcorehttp/_httplibcurl.cpp.
The crash can appear on some non-windows platforms (any LP64 model platforms).
Depending on alignment this can overwrite one word of the pointer `op` declared
above.  Subsequently it will crash when later writing to memory through that
pointer
2019-04-11 17:14:15 -07:00
andreykproductengine 344a3a040f Teamcity W64 build freeze. 2019-02-15 22:05:44 +02:00
andreykproductengine eb1c3c5cbb Fix for teamcity W64 build freeze. 2019-02-08 22:22:06 +02:00
andreykproductengine d785c87d62 SL-2364 Fixed Viewer Caches Login Host DNS Entries Indefinetely 2019-01-29 21:33:31 +02:00
andreykproductengine fa15830e02 SL-10291 Replace apr_atomic with standard C++11 functionality 2019-01-15 18:31:17 +02:00
andreykproductengine 26fae750ba SL-10291 Replace apr_mutex with standard C++11 functionality 2019-01-14 22:04:44 +02:00
Oz Linden f561b11fb8 disable RefCounted tests in llcorehttp because they hang the win64 build in TeamCity 2018-08-30 14:56:52 -04:00
Oz Linden f1d4e788e7 SL-967 simplify viewer log file field syntax
MAINT-8991: only escape log message characters once, add unit test
remove extra log line created by LL_ERRS
document that tags may not contain spaces
2018-08-29 16:43:45 -04:00
andreykproductengine c76f10adcf MAINT-8686 Better http termination logging 2018-06-04 17:57:49 +03:00
Nat Goodspeed ec8ee33939 MAINT-8675: In Darwin-specific CMake, use cp, not cmake -E copy.
cmake -E copy does only one file at a time, and older CMake versions don't
handle wildcards. But cmake -E copy is specifically for portability. When the
copy operation itself is Darwin-only, we can count on having 'cp' available.
2018-05-24 16:01:50 -04:00
Oz Linden 5bfc1e7ed7 copy all versions of libnghttp for tests 2018-01-18 08:23:49 -05:00
Oz Linden d7c8678c3a merge 5.1.0-release 2018-01-17 12:43:28 -05:00
Nat Goodspeed ead19aa22c MAINT-7081: Only request HTTP2 with $VIEWERASSET override (testing) 2017-10-24 15:57:36 -04:00
Nat Goodspeed 96ac49c3e2 MAINT-7081: Merge from lindenlab/viewer64. 2017-10-24 11:22:49 -04:00
Nat Goodspeed 0c7bc67814 Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-10-11 14:35:49 -04:00
Oz Linden d62ad1ef8a merge changes for 5.0.8-release 2017-10-11 09:13:55 -04:00
Nat Goodspeed 6b508cd9d4 MAINT-7081: Eliminate unused variable errors after new refactoring.
The new helper functions check_curl_easy_setopt() and
check_curl_multi_setopt() encapsulate the pervasive idiom:

    code = curl_{easy,multi}_setopt(handle, option, arg);
    check_curl_{easy,multi}_code(code, option);

But since each of these helper functions contains its own local CURL{,M}code
variable 'code', having a caller-scope variable reused for every such call is
no longer necessary -- in fact is no longer used at all. That produces a fatal
warning with MSVC. Get rid of those now-unused variables.
2017-09-30 22:05:21 -04:00
Nat Goodspeed 586d697475 MAINT-7081: Try requesting HTTP/2 when a request wants pipelining. 2017-09-29 17:06:42 -04:00
Nat Goodspeed 19bb6fd33e MAINT-7081: Mention nghttp2 library wherever it must be mentioned. 2017-09-27 15:27:30 -04:00
Nat Goodspeed 1e49cd9b00 DRTVWR-418: Disable more needlessly fragile memory consumption tests. 2017-09-20 17:11:06 -04:00
Nat Goodspeed 2368c44a8e DRTVWR-418: Disable another fragile llcorehttp memory-usage check. 2017-08-15 16:31:17 -04:00
Rider Linden 79856e6554 MAINT-7634: Feedback from code review, move enum to string converter to own function. 2017-08-14 14:54:58 -07:00
Rider Linden 1038633526 MAINT-7634: Logging and instrumentation canges to narrow down viewer crashes. 2017-08-08 09:04:32 -07:00
Rider Linden 57d5744f2c MAINT-7634: Move StatsAccumulator into llcommon, collect data sent and error codes from core. 2017-07-28 14:07:25 -07:00
andreykproductengine 1a5fa01fb8 MAINT-7495 Viewer retries too many time apon 504 from login.cgi 2017-07-24 17:06:12 +03:00
Oz Linden fd3628ef45 Change certificate store infrastructure to key off of the Subject Key
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.
2017-04-14 16:05:59 -04:00
Oz Linden 1925fd2b8b merge changes for 5.0.1-release 2017-02-02 15:49:16 -05:00
andreykproductengine dcff9513f1 MAINT-6978 Proxy should not be initialized outside of startLLProxy() 2016-12-13 20:29:07 +02:00
Nat Goodspeed b6dc755786 Automated merge with ssh://bitbucket.org/lindenlab/viewer-skip-llcorehttp-test 2016-12-08 14:27:40 -05:00
Nat Goodspeed 5bb456d80c DRTVWR-418: Apparently (some) Windows hosts still need freeport().
This is the function in indra/llmessage/tests/testrunner.py that iterates
through ports in a specified range, looking for an available one. Other
platforms understand a specification of port 0 to mean: "You pick one. I'll
just use whichever one you picked."
2016-12-07 14:10:32 -05:00
Nat Goodspeed 0532e298a0 DRTVWR-418: Reinstate test that we THOUGHT was killing test run.
But since the real problem is quite different, try with that suspected test
restored.
2016-12-07 10:05:24 -05:00
Nat Goodspeed e1482838fe DRTVWR-418: Fix a couple variable references in debugging output. 2016-12-07 09:44:55 -05:00
Nat Goodspeed a4ba22fecc DRTVWR-418: Revamp testrunner to shutdown server Thread at end.
Instead of having testrunner.run()'s caller pass a Thread object on which to
run the caller's server instance's serve_forever() method, just pass the
server instance. testrunner.run() now constructs the Thread. This API change
allows run() to also call shutdown() on the server instance when done, and
then join() the Thread.

The hope is that this will avoid the Python runtime forcing the process
termination code to 1 due to forcibly killing the daemon thread still running
serve_forever().

While at it, eliminate calls to testrunner.freeport() -- just make the runtime
pick a suitable port instead.
2016-12-07 09:30:49 -05:00
Nat Goodspeed e1b0317c04 DRTVWR-418: Remove duplicate testrunner.py 2016-12-06 19:44:57 -05:00
Nat Goodspeed 43c9a7d706 Fix minor error in forwarding shutdown_request() call. 2016-12-06 16:19:32 -05:00
Nat Goodspeed e47b178fb9 Try even harder to ignore errors in llcorehttp's dummy server. 2016-12-06 16:09:26 -05:00
Nat Goodspeed 4c89e6dea0 DRTVWR-418: Skip the whole of the failing llcorehttp test function. 2016-12-06 15:38:31 -05:00
Nat Goodspeed 8948c4f001 DRTVWR-418: Skip the llcorehttp test that breaks test machinery.
Loath though I am to skip testing, this consistent failure is not a failure in
the software being tested (llcorehttp) but rather in the dummy server with
which we're testing it.
2016-12-06 14:22:42 -05:00
Oz Linden 26e1f59dcb pull in hack to comment out llcorehttp_test 2016-12-06 13:07:48 -05:00
Oz Linden f43768414d comment out llcorehttp_test until it can be debugged again 2016-12-06 13:07:10 -05:00
Oz Linden fd2ccb1606 merge changes for 4.1.2-release 2016-11-16 09:52:59 -05:00
Nat Goodspeed a0c1842595 DRTVWR-418: Fix syntax for previous test skip. 2017-02-13 16:53:18 -05:00
Nat Goodspeed a971909a34 DRTVWR-418: Reluctantly skip llcorehttp 503-with-retry test on W64. 2017-02-13 16:07:38 -05:00
Nat Goodspeed 434f0e161a Automated merge with ssh://bitbucket.org/lindenlab/viewer-release 2017-02-03 09:54:52 -05:00
Nat Goodspeed 40fb9d3e58 DRTVWR-418: Use U32 for int (and hex) of HttpStatus in 64-bit too.
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.
2016-12-19 16:30:19 -05:00
Nat Goodspeed a4b0159d57 DRTVWR-418: Adjust HttpStatus::toHex() test for 64-bit result. 2016-12-16 19:05:59 -05:00
Nat Goodspeed 771c7dd3c0 DRTVWR-418: Update some copy commands for 3p library versions. 2016-12-10 12:12:51 -05:00
Nat Goodspeed e6513c1eee DRTVWR-418: Change Mac build_directory to build-darwin-x86_64
since we no longer support 32-bit Mac builds.

The old build-darwin-i386 directory name appeared in a shocking number of
files. Change CMake paths to use ${CMAKE_BINARY_DIR} -- or, when trying to
find the packages subdirectory, ${AUTOBUILD_INSTALL_DIR}. Change the rest to
at least look for build-darwin-*.
2016-12-08 12:31:30 -05:00
Nat Goodspeed ba83360f56 DRTVWR-418: Merge backout that restores llcorehttp tests. 2016-12-07 22:50:25 -05:00
Nat Goodspeed 938b803d89 Backed out changeset fbcb5f5fb015: restore llcorehttp tests. 2016-12-07 22:49:59 -05:00