188 lines
4.0 KiB
YAML
188 lines
4.0 KiB
YAML
# SPDX-License-Identifier: ((GPL-2.0 WITH Linux-syscall-note) OR BSD-3-Clause)
|
|
---
|
|
name: psp
|
|
|
|
doc:
|
|
PSP Security Protocol Generic Netlink family.
|
|
|
|
definitions:
|
|
-
|
|
type: enum
|
|
name: version
|
|
entries: [hdr0-aes-gcm-128, hdr0-aes-gcm-256,
|
|
hdr0-aes-gmac-128, hdr0-aes-gmac-256]
|
|
|
|
attribute-sets:
|
|
-
|
|
name: dev
|
|
attributes:
|
|
-
|
|
name: id
|
|
doc: PSP device ID.
|
|
type: u32
|
|
checks:
|
|
min: 1
|
|
-
|
|
name: ifindex
|
|
doc: ifindex of the main netdevice linked to the PSP device.
|
|
type: u32
|
|
-
|
|
name: psp-versions-cap
|
|
doc: Bitmask of PSP versions supported by the device.
|
|
type: u32
|
|
enum: version
|
|
enum-as-flags: true
|
|
-
|
|
name: psp-versions-ena
|
|
doc: Bitmask of currently enabled (accepted on Rx) PSP versions.
|
|
type: u32
|
|
enum: version
|
|
enum-as-flags: true
|
|
-
|
|
name: assoc
|
|
attributes:
|
|
-
|
|
name: dev-id
|
|
doc: PSP device ID.
|
|
type: u32
|
|
checks:
|
|
min: 1
|
|
-
|
|
name: version
|
|
doc: |
|
|
PSP versions (AEAD and protocol version) used by this association,
|
|
dictates the size of the key.
|
|
type: u32
|
|
enum: version
|
|
-
|
|
name: rx-key
|
|
type: nest
|
|
nested-attributes: keys
|
|
-
|
|
name: tx-key
|
|
type: nest
|
|
nested-attributes: keys
|
|
-
|
|
name: sock-fd
|
|
doc: Sockets which should be bound to the association immediately.
|
|
type: u32
|
|
-
|
|
name: keys
|
|
attributes:
|
|
-
|
|
name: key
|
|
type: binary
|
|
-
|
|
name: spi
|
|
doc: Security Parameters Index (SPI) of the association.
|
|
type: u32
|
|
|
|
operations:
|
|
list:
|
|
-
|
|
name: dev-get
|
|
doc: Get / dump information about PSP capable devices on the system.
|
|
attribute-set: dev
|
|
do:
|
|
request:
|
|
attributes:
|
|
- id
|
|
reply: &dev-all
|
|
attributes:
|
|
- id
|
|
- ifindex
|
|
- psp-versions-cap
|
|
- psp-versions-ena
|
|
pre: psp-device-get-locked
|
|
post: psp-device-unlock
|
|
dump:
|
|
reply: *dev-all
|
|
-
|
|
name: dev-add-ntf
|
|
doc: Notification about device appearing.
|
|
notify: dev-get
|
|
mcgrp: mgmt
|
|
-
|
|
name: dev-del-ntf
|
|
doc: Notification about device disappearing.
|
|
notify: dev-get
|
|
mcgrp: mgmt
|
|
-
|
|
name: dev-set
|
|
doc: Set the configuration of a PSP device.
|
|
attribute-set: dev
|
|
do:
|
|
request:
|
|
attributes:
|
|
- id
|
|
- psp-versions-ena
|
|
reply:
|
|
attributes: []
|
|
pre: psp-device-get-locked
|
|
post: psp-device-unlock
|
|
-
|
|
name: dev-change-ntf
|
|
doc: Notification about device configuration being changed.
|
|
notify: dev-get
|
|
mcgrp: mgmt
|
|
|
|
-
|
|
name: key-rotate
|
|
doc: Rotate the device key.
|
|
attribute-set: dev
|
|
do:
|
|
request:
|
|
attributes:
|
|
- id
|
|
reply:
|
|
attributes:
|
|
- id
|
|
pre: psp-device-get-locked
|
|
post: psp-device-unlock
|
|
-
|
|
name: key-rotate-ntf
|
|
doc: Notification about device key getting rotated.
|
|
notify: key-rotate
|
|
mcgrp: use
|
|
|
|
-
|
|
name: rx-assoc
|
|
doc: Allocate a new Rx key + SPI pair, associate it with a socket.
|
|
attribute-set: assoc
|
|
do:
|
|
request:
|
|
attributes:
|
|
- dev-id
|
|
- version
|
|
- sock-fd
|
|
reply:
|
|
attributes:
|
|
- dev-id
|
|
- rx-key
|
|
pre: psp-assoc-device-get-locked
|
|
post: psp-device-unlock
|
|
-
|
|
name: tx-assoc
|
|
doc: Add a PSP Tx association.
|
|
attribute-set: assoc
|
|
do:
|
|
request:
|
|
attributes:
|
|
- dev-id
|
|
- version
|
|
- tx-key
|
|
- sock-fd
|
|
reply:
|
|
attributes: []
|
|
pre: psp-assoc-device-get-locked
|
|
post: psp-device-unlock
|
|
|
|
mcast-groups:
|
|
list:
|
|
-
|
|
name: mgmt
|
|
-
|
|
name: use
|
|
|
|
...
|