Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
2#
3# Author: Chuck Lever <chuck.lever@oracle.com>
4#
5# Copyright (c) 2023, Oracle and/or its affiliates.
6#
7
8name: handshake
9
10protocol: genetlink
11
12doc: Netlink protocol to request a transport layer security handshake.
13
14definitions:
15 -
16 type: enum
17 name: handler-class
18 value-start: 0
19 entries: [ none, tlshd, max ]
20 -
21 type: enum
22 name: msg-type
23 value-start: 0
24 entries: [ unspec, clienthello, serverhello ]
25 -
26 type: enum
27 name: auth
28 value-start: 0
29 entries: [ unspec, unauth, psk, x509 ]
30
31attribute-sets:
32 -
33 name: x509
34 attributes:
35 -
36 name: cert
37 type: s32
38 -
39 name: privkey
40 type: s32
41 -
42 name: accept
43 attributes:
44 -
45 name: sockfd
46 type: s32
47 -
48 name: handler-class
49 type: u32
50 enum: handler-class
51 -
52 name: message-type
53 type: u32
54 enum: msg-type
55 -
56 name: timeout
57 type: u32
58 -
59 name: auth-mode
60 type: u32
61 enum: auth
62 -
63 name: peer-identity
64 type: u32
65 multi-attr: true
66 -
67 name: certificate
68 type: nest
69 nested-attributes: x509
70 multi-attr: true
71 -
72 name: peername
73 type: string
74 -
75 name: done
76 attributes:
77 -
78 name: status
79 type: u32
80 -
81 name: sockfd
82 type: s32
83 -
84 name: remote-auth
85 type: u32
86 multi-attr: true
87
88operations:
89 list:
90 -
91 name: ready
92 doc: Notify handlers that a new handshake request is waiting
93 notify: accept
94 -
95 name: accept
96 doc: Handler retrieves next queued handshake request
97 attribute-set: accept
98 flags: [ admin-perm ]
99 do:
100 request:
101 attributes:
102 - handler-class
103 reply:
104 attributes:
105 - sockfd
106 - message-type
107 - timeout
108 - auth-mode
109 - peer-identity
110 - certificate
111 - peername
112 -
113 name: done
114 doc: Handler reports handshake completion
115 attribute-set: done
116 do:
117 request:
118 attributes:
119 - status
120 - sockfd
121 - remote-auth
122
123mcast-groups:
124 list:
125 -
126 name: none
127 -
128 name: tlshd