Enables building and signing arm/arm64 bits for linux.
Also, several minor improvements to the OBP workflow.
With this PR, linux onebranch build workflow does not install anything online anymore. Everything is set up in the docker image.
Now, xdp-install.ps1 downloads the xdp devkit that is used by the head commit of msquic. When we ingest a new devkit, we just need to change the path in xdp-devkit.json.
* Run Down-Level Tests
* Slight refactor
* Slight refactor
* More fixes
* Try to tell msquictest where to look for libmsquic
* Another try
* Fix windows ref in linux
* set LD_LIBRARY_PATH
* Try a full path
* Build locally instead
* Fix name
* Disable extras
* Let's try this again...
* More fixes
* Try to fix Linux case
* Try running via tests.ps1
* scripts, not scropts
* Use system crypto on Linux
* Add trigger tests
* Fix main trigger
* Add test file
* Test triggering from onebranch pipeline
* Test distribution again
* Print out env vars
* one more artifact thing
* More distribution test
* Add the rest of the triggers back in
* Some more triggering
* Some more cleanup
* Fix CI again
* Hopefully just 1 last fix
* 1 more linux fix...
* Fix a few low hanging things
* Pregenerate clog files
This removes the build time dependency on clog, which removes the build time dependency on .NET
* Add a few missing logs, cleanup
* Fixup linux build
* Make linux builds default to parallel
* Only install clog for dev, fix builds without logging
* Only link include dirs to logged programs
* Add support for building openssl with jom
Jom is a QT NMAKE replacement which supports parallel builds. Its done as an optional dependency to make builds still work without it installed
* Fix prepare machine
* Fixup cmake targets for openssl
* Extra comment
* Fully remove cache support
* Clean up code relating to cache
Implement server-side validation of client certificates in Schannel. Add new tests to ensure that client certificates are validated.
QUIC_CREDENTIAL_FLAG_REQUIRE_CLIENT_AUTHENTICATION will automatically turn on client certificate validation, but client certificates that fail validation will cause the handshake to fail.
QUIC_CREDENTIAL_FLAG_DEFER_CERTIFICATE_VALIDATION is required to allow the handshake to proceed with client certificates that fail validation