Commit Graph

24 Commits

Author SHA1 Message Date
Rudi Floren 4922c4e370
Add support for idle keepalive
Using the idle_timeout paramter during connection creation, the
connection is prevented from being closed server-side due to beeing idle
for too long. Internally, while waiting for an API request, if
idle_timeout reaches zero before a new request comes in, a hello request
is send as a keepalive measure.
2023-01-17 18:13:50 +01:00
Rudi Floren 065210b8e8
Split client and connection into two halfes
This rewrites the logic to process requests to follow the I/O task
pattern. This makes it easier to implement things like keepalives as
well as dealing with dropped futures.
2023-01-17 18:13:42 +01:00
Rudi Floren eb2ff138f5
Prepare move to I/O task based client connection architecture 2023-01-17 18:13:42 +01:00
Rudi Floren 0c28b1db62
Split out connector trait and fns into own module 2023-01-17 18:13:40 +01:00
Rudi Floren 001d3d91ea
Revert "Improve robustness against dropping futures"
This reverts commit ae4c9869ab.
2023-01-17 13:26:14 +01:00
Mari e9cf8bc3f9 set `new-password` as argument 2022-09-07 06:03:16 +08:00
Mari 63406ef308 Update basic tests to new syntax 2022-09-07 06:03:16 +08:00
Mari cc08819fdc Allow changing passwords 2022-09-07 06:03:16 +08:00
Dirkjan Ochtman ace791b521 Add test for dropping request future 2022-03-14 23:41:41 +08:00
Dirkjan Ochtman ae4c9869ab Improve robustness against dropping futures 2022-03-14 23:41:41 +08:00
Dirkjan Ochtman 36558c429c Allow the Connection to connect itself 2022-02-10 13:55:34 +08:00
Dirkjan Ochtman dc3f10cae3 Wrap timeouts around network operations 2022-02-04 11:39:13 +08:00
Dirkjan Ochtman 5fb32978bd Improve check request API types by redirecting serialization 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman fdec3f29fc Redirect CheckResponse deserialization to improve interface 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman a5d6643d6f Share CheckResponse type with contacts 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman dd1c9c1e66 Share CheckResponse types for domain and host resources 2022-01-31 14:04:48 +08:00
Dirkjan Ochtman 0c36d8add3 Use an enum for result codes 2022-01-27 17:10:28 +08:00
Dirkjan Ochtman 630c6b06e4 Change DomainAvailable::available to be a bool
From RFC 5731:

    This element MUST contain an "avail" attribute whose value indicates
    object availability (can it be provisioned or not) at the moment the
    <check> command was completed.  A value of "1" or "true" means that
    the object can be provisioned.  A value of "0" or "false" means that
    the object can not be provisioned.
2022-01-24 16:34:33 +08:00
Dirkjan Ochtman 9acd9eac29 Take Login ext_uris values as a slice to allow caller to avoid allocation
In some cases the caller might be able to use a const slice for this.
2022-01-24 15:34:45 +08:00
Nicholas Rempel c0ebbf6b52 Add test case for message only poll response 2022-01-06 19:22:20 +08:00
Nicholas Rempel 427db7a1eb Add test case for empty queue poll response 2022-01-06 19:22:20 +08:00
Nicholas Rempel 569bd86bae Add HostInfoResponseData to list of support message poll response types 2022-01-06 19:22:20 +08:00
Dirkjan Ochtman e9c5db9a1c Add basic test for high-level API 2022-01-03 10:22:20 +08:00
Dirkjan Ochtman 8efb206e43 Rename test directory to tests 2022-01-03 10:22:20 +08:00