Andrew Kelley e4a9b19a14 std.crypto.tls.Client: rework the read function
Here's what I landed on for the TLS client. It's 16896 bytes
(max_ciphertext_record_len is 16640). I believe this is the theoretical
minimum size, give or take a few bytes.

These constraints are satisfied:
 * a call to the readvAdvanced() function makes at most one call to the
   underlying readv function
 * iovecs are provided by the API, and used by the implementation for
   underlying readv() calls to the socket
 * the theoretical minimum number of memcpy() calls are issued in all
   circumstances
 * decryption is only performed once for any given TLS record
 * large read buffers are fully exploited

This is accomplished by using the partial read buffer to storing both
cleartext and ciphertext.
2023-01-02 16:57:16 -07:00
..
2023-01-02 16:57:15 -07:00
2022-12-14 14:26:02 -07:00
2022-11-30 15:42:59 -07:00
2022-12-31 20:49:02 -05:00
2022-12-13 15:04:03 -05:00
2022-12-18 01:46:09 -05:00
2022-12-13 13:14:20 +02:00
2022-12-29 12:42:44 +02:00
2022-12-09 21:57:17 +01:00
2022-11-04 00:09:27 +03:30
2023-01-02 16:57:15 -07:00
2023-01-02 16:57:15 -07:00
2022-12-13 13:14:20 +02:00
2022-12-31 20:49:02 -05:00
2022-01-07 00:06:06 -05:00
2022-09-11 23:18:43 -04:00
2023-01-02 16:57:15 -07:00
2022-12-30 17:23:31 +02:00
2023-01-02 16:57:15 -07:00
2022-12-13 13:14:20 +02:00
2022-04-15 17:01:01 -05:00
2023-01-02 16:57:15 -07:00
2022-12-21 17:02:53 +01:00