Rick Macklem
373511338d
uipc_socket.c: Modify MSG_TLSAPPDATA to only do Alert Records
...
Without this patch, the MSG_TLSAPPDATA flag would cause
soreceive_generic() to return ENXIO for any non-application
data record in a TLS receive stream.
This works ok for TLS1.2, since Alert records appear to be
the only non-application data records received.
However, for TLS1.3, there can be post-handshake handshake
records, such as NewSessionKey sent to the client from the
server. These handshake records cannot be handled by the
upcall which does an SSL_read() with length == 0.
It appears that the client can simply throw away these
NewSessionKey records, but to do so, it needs to receive
them within the kernel.
This patch modifies the semantics of MSG_TLSAPPDATA slightly,
so that it only applies to Alert records and not Handshake
records. It is needed to allow the krpc to work with KTLS1.3.
Reviewed by: hselasky
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D35170
2022-05-14 12:56:50 -07:00
..
2022-03-10 12:11:32 +01:00
2020-12-17 20:31:17 +00:00
2021-07-28 13:49:16 -06:00
2019-10-29 17:28:25 +00:00
2021-09-07 10:08:51 -06:00
2022-01-17 16:12:36 -05:00
2020-11-08 04:24:29 +00:00
2022-03-24 10:20:51 +00:00
2022-02-21 20:15:57 -04:00
2022-04-14 15:17:36 -04:00
2022-03-24 10:20:51 +00:00
2022-03-24 10:20:51 +00:00
2022-02-21 20:15:45 -04:00
2021-11-15 16:13:24 -05:00
2022-01-09 19:25:56 -05:00
2021-07-09 20:57:58 -04:00
2022-05-13 10:42:17 -03:00
2022-02-24 10:58:07 -07:00
2022-05-06 15:46:58 -07:00
2022-05-11 10:40:39 +03:00
2022-03-24 10:20:51 +00:00
2022-04-15 16:56:20 +03:00
2020-11-23 18:27:21 +00:00
2022-05-13 10:43:19 -03:00
2021-07-18 23:06:19 -05:00
2020-11-19 02:50:48 +00:00
2022-04-25 10:20:54 +03:00
2022-03-24 10:20:51 +00:00
2022-04-28 02:27:34 +03:00
2020-09-01 22:12:32 +00:00
2022-02-06 17:29:43 +01:00
2022-02-13 13:07:08 +00:00
2020-01-30 20:05:05 +00:00
2021-12-28 13:51:25 -08:00
2022-04-09 14:19:17 +02:00
2022-03-07 10:47:27 -05:00
2021-07-29 12:41:29 +03:00
2020-09-01 22:12:32 +00:00
2022-03-28 19:43:03 +01:00
2022-03-24 10:20:51 +00:00
2021-09-18 10:16:58 +00:00
2022-04-10 00:43:53 +03:00
2019-08-21 23:43:58 +00:00
2020-10-28 13:46:11 +00:00
2022-04-12 14:58:59 -07:00
2022-05-05 14:38:08 -04:00
2020-12-26 20:25:02 -08:00
2021-12-09 18:09:53 +00:00
2020-01-30 20:05:05 +00:00
2021-09-02 21:16:46 -04:00
2022-02-07 14:16:16 -07:00
2021-09-09 10:11:02 -04:00
2021-04-18 11:19:15 -06:00
2020-09-01 22:12:32 +00:00
2020-02-26 14:26:36 +00:00
2020-12-26 20:25:02 -08:00
2022-04-28 02:27:35 +03:00
2022-04-28 02:27:35 +03:00
2022-04-09 09:14:14 +02:00
2022-02-06 17:28:27 +01:00
2019-09-15 02:59:53 +00:00
2021-01-11 15:36:57 -08:00
2022-02-14 10:57:30 -08:00
2022-03-07 10:43:19 -05:00
2021-05-23 17:55:27 +00:00
2022-05-12 13:22:12 -07:00
2021-12-08 22:54:07 -06:00
2022-05-13 10:43:19 -03:00
2022-04-25 10:23:15 +03:00
2021-12-26 23:07:33 -05:00
2021-05-23 17:55:27 +00:00
2022-05-06 17:25:43 -06:00
2021-12-28 09:41:08 -08:00
2021-11-22 22:36:54 +00:00
2022-03-21 09:33:46 -04:00
2021-07-29 12:41:29 +03:00
2022-02-13 13:07:08 +00:00
2022-04-25 10:20:54 +03:00
2022-04-21 10:40:01 -07:00
2022-03-20 11:31:16 -07:00
2021-09-25 11:47:24 +02:00
2022-04-25 10:20:54 +03:00
2020-04-15 18:39:12 +00:00
2022-05-13 10:42:48 -03:00
2020-09-01 22:12:32 +00:00
2022-03-24 10:20:51 +00:00
2022-03-24 10:20:51 +00:00
2021-12-08 23:32:29 +02:00
2021-09-27 20:04:51 -07:00
2021-09-01 21:58:16 +01:00
2021-12-28 09:41:08 -08:00
2021-12-28 09:41:08 -08:00
2021-08-08 10:42:24 -04:00
2020-09-01 22:12:32 +00:00
2022-04-13 16:08:22 -07:00
2022-04-13 16:08:23 -07:00
2020-10-28 13:46:11 +00:00
2020-08-05 09:27:03 +00:00
2021-11-03 12:36:02 -04:00
2021-12-28 09:41:08 -08:00
2021-09-05 12:45:29 -07:00
2021-07-13 17:47:27 -04:00
2020-09-01 22:12:32 +00:00
2022-01-05 13:50:40 -08:00
2022-04-19 10:43:50 -07:00
2022-04-21 12:01:55 -07:00
2021-12-28 09:41:08 -08:00
2021-08-08 10:42:24 -04:00
2020-01-30 20:05:05 +00:00
2022-01-20 08:23:38 -05:00
2022-02-10 09:34:37 -06:00
2020-11-05 15:08:56 +00:00
2021-09-14 14:29:27 -04:00
2022-02-23 14:45:47 +00:00
2021-10-17 15:31:35 +01:00
2021-03-02 18:33:45 -07:00
2020-10-26 04:04:06 +00:00
2022-03-25 20:10:38 -05:00
2020-01-30 20:05:05 +00:00
2022-04-02 14:15:27 +02:00
2021-10-21 21:40:46 +03:00
2020-11-29 19:38:03 +00:00
2021-08-08 21:54:49 -04:00
2022-01-03 17:08:44 +00:00
2022-04-12 10:34:40 +01:00
2021-12-14 14:52:25 +00:00
2021-05-23 17:55:27 +00:00
2021-08-04 11:50:34 -07:00
2020-09-01 22:12:32 +00:00
2021-01-08 09:24:49 +02:00
2021-11-03 12:36:02 -04:00
2022-05-07 09:32:22 -06:00
2021-06-16 20:00:14 -06:00
2020-11-09 00:34:23 +00:00
2020-07-24 17:32:10 +00:00
2022-04-07 14:31:51 +01:00
2020-09-01 22:12:32 +00:00
2022-02-05 13:35:31 -08:00
2020-08-13 20:48:14 +00:00
2021-04-02 15:41:51 +03:00
2021-08-08 10:42:24 -04:00
2021-09-27 14:38:26 -03:00
2020-09-28 17:19:57 +00:00
2021-10-05 14:47:38 -04:00
2020-09-01 22:12:32 +00:00
2021-05-25 16:59:18 -07:00
2022-02-14 10:06:47 -05:00
2021-12-30 12:20:32 +01:00
2020-03-06 19:10:00 +00:00
2020-07-06 16:33:28 +00:00
2021-04-02 13:17:53 +11:00
2022-02-13 13:07:08 +00:00
2021-09-02 21:16:46 -04:00
2021-08-08 10:42:24 -04:00
2022-02-13 13:07:08 +00:00
2021-02-18 14:02:48 +00:00
2020-09-01 22:12:32 +00:00
2022-04-28 03:00:14 +03:00
2021-09-02 18:28:45 +00:00
2022-03-25 20:10:38 -05:00
2022-02-22 18:53:43 +00:00
2021-10-11 13:22:32 +00:00
2022-04-25 10:20:54 +03:00
2020-01-12 23:52:16 +00:00
2022-04-13 16:08:23 -07:00
2021-10-11 13:22:32 +00:00
2022-03-28 19:43:03 +01:00
2022-05-12 13:22:12 -07:00
2021-12-09 02:49:10 +02:00
2022-04-14 15:11:21 -04:00
2021-12-09 02:49:10 +02:00
2021-11-17 20:12:23 +00:00
2021-11-17 20:12:23 +00:00
2022-05-14 14:07:20 +03:00
2022-03-21 10:27:35 +00:00
2022-05-06 17:25:43 -06:00
2022-04-12 17:30:04 -04:00
2021-04-18 11:14:17 -06:00
2021-10-11 13:22:32 +00:00
2020-08-27 05:11:15 +00:00
2022-02-22 18:53:43 +00:00
2021-06-14 17:32:27 -04:00
2022-01-03 10:15:22 -08:00
2022-01-03 10:15:22 -08:00
2022-04-22 15:52:12 -07:00
2021-12-29 09:23:52 +01:00
2022-01-26 12:55:00 +01:00
2020-10-22 09:17:56 +00:00
2022-02-22 18:53:43 +00:00
2021-11-17 20:12:26 +00:00
2022-02-27 09:02:45 -07:00
2022-05-12 13:22:12 -07:00
2022-05-14 12:56:50 -07:00
2022-02-23 10:24:14 -08:00
2022-05-12 13:22:39 -07:00
2021-11-25 22:50:42 +00:00
2021-11-14 16:59:53 +00:00
2022-03-06 10:29:31 -05:00
2022-04-02 14:52:49 +02:00
2021-09-02 21:36:33 +03:00
2022-03-24 10:20:51 +00:00
2020-09-01 22:12:32 +00:00
2022-03-24 10:20:51 +00:00
2021-08-27 18:39:45 +03:00
2022-04-10 00:43:53 +03:00
2022-04-27 11:46:16 -07:00
2022-03-24 10:20:51 +00:00
2022-03-24 10:20:51 +00:00
2022-04-11 23:30:16 +03:00
2022-04-15 16:56:20 +03:00
2022-04-02 20:49:01 +02:00
2021-12-15 20:54:57 -07:00