public inbox for kernel-tls-handshake@lists.linux.dev
 help / color / mirror / Atom feed
From: Chuck Lever <cel@kernel.org>
To: <kernel-tls-handshake@lists.linux.dev>
Cc: Xin Long <lucien.xin@gmail.com>, Chuck Lever <chuck.lever@oracle.com>
Subject: [PATCH v1 14/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/tlshd.h
Date: Thu, 25 Sep 2025 21:22:03 -0400	[thread overview]
Message-ID: <20250926012207.3642990-15-cel@kernel.org> (raw)
In-Reply-To: <20250926012207.3642990-1-cel@kernel.org>

From: Chuck Lever <chuck.lever@oracle.com>

I started the ktls-utils project using the Linux kernel flavor of
Doxygen commenting which user-space Doxygen does not recognize by
default.

Convert existing comments in tlshd.h to what a normal user space
Doxygen run expects to see. This will enable deployment of an
automatically-generated documentation web site.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
---
 src/tlshd/tlshd.h | 78 ++++++++++++++++++++++++++++++++++++-----------
 1 file changed, 61 insertions(+), 17 deletions(-)

diff --git a/src/tlshd/tlshd.h b/src/tlshd/tlshd.h
index 7f3ec40add4c..5d8965be322c 100644
--- a/src/tlshd/tlshd.h
+++ b/src/tlshd/tlshd.h
@@ -1,6 +1,9 @@
+/**
+ * @file tlshd.h
+ * @brief Generic definitions and forward declarations for tlshd
+ */
+
 /*
- * Generic definitions and forward declarations for tlshd.
- *
  * ktls-utils is free software; you can redistribute it and/or
  * modify it under the terms of the GNU General Public License as
  * published by the Free Software Foundation; version 2.
@@ -18,6 +21,10 @@
 
 #include <linux/netlink.h>
 
+/**
+ * @def ARRAY_SIZE
+ * @brief Generate the number of elements in an array
+ */
 #define ARRAY_SIZE(a)		(sizeof(a) / sizeof((a)[0]))
 
 extern int tlshd_debug;
@@ -27,21 +34,27 @@ extern int tlshd_stderr;
 
 struct nl_sock;
 
+/**
+ * @struct tlshd_handshake_parms
+ * @brief Handshake parameters (global)
+ */
 struct tlshd_handshake_parms {
-	char		*peername;
-	char		*peeraddr;
-	int		sockfd;
-	int		ip_proto;
-	uint32_t	handshake_type;
-	unsigned int	timeout_ms;
-	uint32_t	auth_mode;
-	key_serial_t	keyring;
-	key_serial_t	x509_cert;
-	key_serial_t	x509_privkey;
-	GArray		*peerids;
-	GArray		*remote_peerids;
+	/*@{*/
+	char		*peername;	/**< Remote's DNS label */
+	char		*peeraddr;	/**< Remote's IP address */
+	int		sockfd;		/**< Socket on which to perform the handshake */
+	int		ip_proto;	/**< Transport protocol number */
+	uint32_t	handshake_type;	/**< Handshake interaction to perform */
+	unsigned int	timeout_ms;	/**< How long to wait for completion */
+	uint32_t	auth_mode;	/**< x.509, PSK, etc. */
+	key_serial_t	keyring;	/**< Keyring containing auth material */
+	key_serial_t	x509_cert;	/**< Key serial of our x.509 cert */
+	key_serial_t	x509_privkey;	/**< Key serial of our x.509 private key */
+	GArray		*peerids;	/**< Peer identities to present to servers */
+	GArray		*remote_peerids; /**< Peer identities presented by clients */
 
-	unsigned int	session_status;
+	unsigned int	session_status;	/**< Handshake completion status */
+	/*@}*/
 };
 
 enum peer_type {
@@ -134,6 +147,10 @@ extern void tlshd_quic_serverhello_handshake(struct tlshd_handshake_parms *parms
 #define TLSHD_QUIC_MAX_DATA_LEN		4096
 #define TLSHD_QUIC_MAX_ALPNS_LEN	128
 
+/**
+ * @struct tlshd_quic_msg
+ * @brief QUIC message format
+ */
 struct tlshd_quic_msg {
 	struct tlshd_quic_msg *next;
 	uint8_t data[TLSHD_QUIC_MAX_DATA_LEN];
@@ -141,6 +158,10 @@ struct tlshd_quic_msg {
 	uint8_t level;
 };
 
+/**
+ * @struct tlshd_quic_conn
+ * @brief QUIC connection object
+ */
 struct tlshd_quic_conn {
 	struct tlshd_handshake_parms *parms;
 	char alpns[TLSHD_QUIC_MAX_ALPNS_LEN];
@@ -161,16 +182,39 @@ struct tlshd_quic_conn {
 	struct tlshd_quic_msg recv_msg;
 };
 
-/* quic.c */
 extern int tlshd_quic_conn_create(struct tlshd_quic_conn **conn_p,
 				  struct tlshd_handshake_parms *parms);
 extern void tlshd_quic_conn_destroy(struct tlshd_quic_conn *conn);
 extern void tlshd_quic_start_handshake(struct tlshd_quic_conn *conn);
+
 #endif
 
+/**
+ * @def TLS_DEFAULT_PSK_TYPE
+ * @brief Default type of pre-shared key
+ */
 #define TLS_DEFAULT_PSK_TYPE	"psk"
+
+/**
+ * @def TLS_NO_PEERID
+ * @brief No peer ID provided via keyring
+ */
 #define TLS_NO_PEERID		(0)
+
+/**
+ * @def TLS_NO_CERT
+ * @brief No certificate provided via keyring
+ */
 #define TLS_NO_CERT		(0)
+
+/**
+ * @def TLS_NO_PRIVKEY
+ * @brief No private key provided via keyring
+ */
 #define TLS_NO_PRIVKEY		(0)
-/* Max number of (chained) certs to load */
+
+/**
+ * @def TLSHD_MAX_CERTS
+ * @brief Maximum number of (chained) certs to load
+ */
 #define TLSHD_MAX_CERTS		10
-- 
2.51.0


  parent reply	other threads:[~2025-09-26  1:22 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-26  1:21 [PATCH v1 00/16] Create gh-pages for ktls-utils Chuck Lever
2025-09-26  1:21 ` [PATCH v1 01/16] tlshd: Add kernel's quic.h Chuck Lever
2025-09-26  1:21 ` [PATCH v1 02/16] tlshd: leave session_status as EIO on GnuTLS failure in QUIC session setup Chuck Lever
2025-09-26  1:21 ` [PATCH v1 03/16] tlshd: set conn errcode to EACCES on GnuTLS failure in QUIC handshake Chuck Lever
2025-09-26  1:21 ` [PATCH v1 04/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/client.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 05/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/config.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 06/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/handshake.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 07/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/keyring.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 08/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/ktls.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 09/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/log.c Chuck Lever
2025-09-26  1:21 ` [PATCH v1 10/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/main.c Chuck Lever
2025-09-26  1:22 ` [PATCH v1 11/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/netlink.c Chuck Lever
2025-09-26  1:22 ` [PATCH v1 12/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/quic.c Chuck Lever
2025-09-26  1:22 ` [PATCH v1 13/16] tlshd: Translate kernel-style Doxygen comments in src/tlshd/server.c Chuck Lever
2025-09-26  1:22 ` Chuck Lever [this message]
2025-09-26  1:22 ` [PATCH v1 15/16] Build Doxygen web site Chuck Lever
2025-09-26  1:22 ` [PATCH v1 16/16] workflows: Generate gh-pages automatically Chuck Lever

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250926012207.3642990-15-cel@kernel.org \
    --to=cel@kernel.org \
    --cc=chuck.lever@oracle.com \
    --cc=kernel-tls-handshake@lists.linux.dev \
    --cc=lucien.xin@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox