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