aboutsummaryrefslogtreecommitdiffstats
path: root/fnet/src/tests
Commit message (Collapse)AuthorAgeFilesLines
* Update copyrightJon Bratseth2023-10-0943-43/+43
|
* more robust shutdown to avoid multi-close raceHåvard Pettersen2023-08-091-2/+6
|
* Verify value of dummy member at object destruction.Henning Baldersheim2023-03-201-11/+16
|
* Update expected size of FNET_IOComponentHenning Baldersheim2023-03-071-1/+1
|
* use ref_counted in fnetHåvard Pettersen2023-03-0612-70/+83
| | | | | | also get rid of some cleanup functions on reference counted classes enable specifying low-level parameters to addref/subref (cnt/reserve)
* untangle fnet from fastosHåvard Pettersen2023-02-225-28/+14
|
* Add metrics tracking failed RPC and status page capability checksTor Brede Vekterli2023-02-171-0/+10
|
* stop using fastos thread more placesHåvard Pettersen2023-02-141-2/+3
| | | | | | | | | | - also stop using std::jthread - remove Active and Joinable interfaces - remove stop, stopped and slumber - remove currentThread - make start function static - override start for Runnable w/init or custom function - explicit stop/slumber where needed
* GC #ifdef __clang__not neededHenning Baldersheim2023-02-141-11/+7
|
* Deinline destructors in metrics, fnet, jrt_test logdHenning Baldersheim2023-02-011-62/+64
|
* Use snprintf instead of sprintf.Tor Egge2023-01-311-1/+1
|
* remove xor crypto engine from C++Håvard Pettersen2023-01-044-19/+1
|
* Remove stacksize from the thread pools and thread executors.Henning Baldersheim2022-12-205-7/+7
|
* Slow down when getting too far ahead of server.Tor Egge2022-11-031-0/+7
|
* Explicitly test that requiring an empty capability set is a no-opTor Brede Vekterli2022-08-251-0/+10
| | | | | | | This should always work (tm), so adding a test that shows that it does. Mostly useful for RPCs that are always configured to use a request filter but where the actual capability set is optionally set and defaults to empty.
* Add factory functions for creating capability requirement filtersTor Brede Vekterli2022-08-231-2/+2
| | | | Refactor existing request access filter creation to use these.
* Support capability enforcement environment variable in C++Tor Brede Vekterli2022-08-223-3/+46
| | | | | | | | | | Mirrors Java enforce/log-only/disable semantics, defaulting to enforce. Also fixes an issue where connection auth context and capabilities would not be set if a server socket was running in mixed-mode. This is not a problem in practice since mixed-mode is inherently completely insecure since it must accept plain-text clients, which implicitly have all capabilities granted.
* Support mTLS connection-level capabilities and RPC access filtering in C++Tor Brede Vekterli2022-06-292-4/+53
| | | | | | | | | | | | | | | | | | | | | | | | Adds the following: * Named capabilities and capability sets that represent (respectively) a single Vespa access API (such as Document API, search API etc) or a concrete subset of individual capabilities that make up a particular Vespa service (such as a content node). * A new `capabilities` array field to the mTLS authorization policies that allows for constraining what requests sent over a particular connection are allowed to actually do. Capabilities are referenced by name and may include any combination of capability sets and individual capabilities. If multiple capabilities/sets are configured, the resulting set of capabilities is the union set of all of them. * An FRT RPC-level access filter that can be set up as part of RPC method definitions. If set, filters are invoked prior to RPC methods. * A new `PERMISSION_DENIED` error code to FRT RPC that is invoked if an access filter denies a request. This also GCs the unused `AssumedRoles` concept which is now deprecated in favor of capabilities. Note: this is **not yet** a public or stable API, and capability names/semantics may change at any time.
* fix undefined behavior in unit testsHåvard Pettersen2022-06-092-174/+40
|
* avoid calling function on nullptrHåvard Pettersen2022-05-231-7/+7
|
* Add missing include statements. Check for atomic wait support.Tor Egge2022-04-051-0/+1
|
* Remove unused variable in fnet unit test.Tor Egge2022-04-011-1/+0
|
* enable detaching a supervisor from a running transportHåvard Pettersen2022-03-302-0/+196
| | | | | | | This is done by closing all connectors and connections related to the supervisor (via the server adapter interface). Also; the packet streamer was made a singleton to avoid additional (unneeded) references to the supervisor object.
* remove admin channel conceptHåvard Pettersen2022-03-244-26/+5
|
* gc old process codeHåvard Pettersen2022-03-051-129/+120
| | | | also added read_line function to new Process code
* remove connection-based session handlingHåvard Pettersen2022-02-283-172/+0
| | | | also remove method mismatch hook
* Remove inlining warnings (fnet).Tor Egge2022-02-262-1/+9
|
* - Use the typesafe vespalib::count_ms() to correcly count ms.Henning Baldersheim2022-02-251-1/+1
| | | | - Choose tick based on VESPA_TIMER_HZ/10. VESPA_TIMER_HZ has a default of 1000hz.
* Revert "Revert "- Create the common transport and threadpool in the main loop.""Henning Baldersheim2022-02-243-4/+4
|
* Revert "- Create the common transport and threadpool in the main loop."Henning Baldersheim2022-02-243-4/+4
|
* - Create the common transport and threadpool in the main loop.Henning Baldersheim2022-02-243-4/+4
| | | | | - Also use the common transport for config subscriptions. - Put The TransportConfig in the fnet namespace.
* Ensure cross-thread visibility in testTor Brede Vekterli2022-02-181-8/+9
|
* Revert "Avoid using vespamalloc for small utility programs as it has a too ↵Henning Baldersheim2022-01-311-2/+2
| | | | hi… [run-systemtest]"
* Avoid using vespamalloc for small utility programs as it has a too high ↵Henning Baldersheim2022-01-281-2/+2
| | | | initial cost and memory footprint.
* Avoid strdup.Henning Baldersheim2021-11-241-2/+2
|
* Update 2019 Oath copyrights.gjoranv2021-10-271-1/+1
|
* Update Verizon Media copyright notices.gjoranv2021-10-072-2/+2
|
* Update 2018 copyright notices.gjoranv2021-10-071-1/+1
|
* Update 2017 copyright notices.gjoranv2021-10-0738-38/+38
|
* low-level testing of fnet enabled byHåvard Pettersen2021-09-164-2/+131
| | | | | | | | | | | | | | | | | | | 1. Manipulating how much time is spent waiting for events while also manipulating how the passing of time is observed by the transport threads. (fnet::TimeTools) 2. Periodic call-backs from FNET_Transport. All transport threads are blocked during these call-backs. Between each call-back, all transport threads perform a single event loop iteration and any async operations not performed in transport threads are flushed. (FNET_Transport::attach_capture_hook) 3. Combining 1 and 2 in a way that lets the test code run all transport threads one iteration at a time, letting the transport threads run concurrently with each other, but no transport thread is allowed to run concurrently with the test code. (fnet::TransportDebugger)
* drop empty buffersHåvard Pettersen2021-06-012-9/+35
|
* Track mutex size for Amazon Linux 2 on arm cpu.Tor Egge2021-04-301-0/+2
|
* use size literals in fnetArne Juul2021-02-155-7/+12
|
* Use vespalib::duration for timeoutsHenning Baldersheim2021-01-313-1/+4
|
* Reduce timeouts.Henning Baldersheim2021-01-141-6/+7
|
* - Add the cost to expensive tests.Henning Baldersheim2021-01-131-12/+17
| | | | - Use less resources on the fnet_parallel_rpc test bu just using as many threads as you have cores.
* Unify on steady_xxxHenning Baldersheim2020-12-011-11/+11
|
* - Separate out the tail of the EventLoop into separate method to ease ↵Henning Baldersheim2020-12-012-7/+7
| | | | | | readability. - Also separate out timeout handling of old connections to separate method and unify on vespalib::time.
* provide the config in the constructor only.Henning Baldersheim2020-12-012-3/+3
|
* Misc cleanup of includes and code healthHenning Baldersheim2020-12-0117-29/+58
|