114c9fd16Szhenwei pi# -*- Mode: Python -*- 214c9fd16Szhenwei pi# vim: filetype=python 314c9fd16Szhenwei pi# 414c9fd16Szhenwei pi# This work is licensed under the terms of the GNU GPL, version 2 or later. 514c9fd16Szhenwei pi# See the COPYING file in the top-level directory. 614c9fd16Szhenwei pi 714c9fd16Szhenwei pi## 84622c706SMarkus Armbruster# = Cryptography devices 94622c706SMarkus Armbruster## 104622c706SMarkus Armbruster 114622c706SMarkus Armbruster## 12b1019999SMarkus Armbruster# @QCryptodevBackendAlgoType: 13999c789fSzhenwei pi# 14999c789fSzhenwei pi# The supported algorithm types of a crypto device. 15999c789fSzhenwei pi# 16999c789fSzhenwei pi# @sym: symmetric encryption 17a937b6aaSMarkus Armbruster# 18999c789fSzhenwei pi# @asym: asymmetric Encryption 19999c789fSzhenwei pi# 20999c789fSzhenwei pi# Since: 8.0 21999c789fSzhenwei pi## 22b1019999SMarkus Armbruster{ 'enum': 'QCryptodevBackendAlgoType', 23999c789fSzhenwei pi 'data': ['sym', 'asym']} 24999c789fSzhenwei pi 25999c789fSzhenwei pi## 26bc304a64Szhenwei pi# @QCryptodevBackendServiceType: 27bc304a64Szhenwei pi# 28bc304a64Szhenwei pi# The supported service types of a crypto device. 29bc304a64Szhenwei pi# 30*4707331dSzhenwei pi# @cipher: Symmetric Key Cipher service 31*4707331dSzhenwei pi# 32*4707331dSzhenwei pi# @hash: Hash service 33*4707331dSzhenwei pi# 34*4707331dSzhenwei pi# @mac: Message Authentication Codes service 35*4707331dSzhenwei pi# 36*4707331dSzhenwei pi# @aead: Authenticated Encryption with Associated Data service 37*4707331dSzhenwei pi# 38*4707331dSzhenwei pi# @akcipher: Asymmetric Key Cipher service 39*4707331dSzhenwei pi# 40bc304a64Szhenwei pi# Since: 8.0 41bc304a64Szhenwei pi## 42bc304a64Szhenwei pi{ 'enum': 'QCryptodevBackendServiceType', 43bc304a64Szhenwei pi 'data': ['cipher', 'hash', 'mac', 'aead', 'akcipher']} 44bc304a64Szhenwei pi 45bc304a64Szhenwei pi## 4614c9fd16Szhenwei pi# @QCryptodevBackendType: 4714c9fd16Szhenwei pi# 4814c9fd16Szhenwei pi# The crypto device backend type 4914c9fd16Szhenwei pi# 5014c9fd16Szhenwei pi# @builtin: the QEMU builtin support 51a937b6aaSMarkus Armbruster# 5214c9fd16Szhenwei pi# @vhost-user: vhost-user 53a937b6aaSMarkus Armbruster# 5414c9fd16Szhenwei pi# @lkcf: Linux kernel cryptographic framework 5514c9fd16Szhenwei pi# 5614c9fd16Szhenwei pi# Since: 8.0 5714c9fd16Szhenwei pi## 5814c9fd16Szhenwei pi{ 'enum': 'QCryptodevBackendType', 5914c9fd16Szhenwei pi 'data': ['builtin', 'vhost-user', 'lkcf']} 605dcb0198Szhenwei pi 615dcb0198Szhenwei pi## 625dcb0198Szhenwei pi# @QCryptodevBackendClient: 635dcb0198Szhenwei pi# 645dcb0198Szhenwei pi# Information about a queue of crypto device. 655dcb0198Szhenwei pi# 665dcb0198Szhenwei pi# @queue: the queue index of the crypto device 675dcb0198Szhenwei pi# 685dcb0198Szhenwei pi# @type: the type of the crypto device 695dcb0198Szhenwei pi# 705dcb0198Szhenwei pi# Since: 8.0 715dcb0198Szhenwei pi## 725dcb0198Szhenwei pi{ 'struct': 'QCryptodevBackendClient', 735dcb0198Szhenwei pi 'data': { 'queue': 'uint32', 745dcb0198Szhenwei pi 'type': 'QCryptodevBackendType' } } 755dcb0198Szhenwei pi 765dcb0198Szhenwei pi## 775dcb0198Szhenwei pi# @QCryptodevInfo: 785dcb0198Szhenwei pi# 795dcb0198Szhenwei pi# Information about a crypto device. 805dcb0198Szhenwei pi# 815dcb0198Szhenwei pi# @id: the id of the crypto device 825dcb0198Szhenwei pi# 835dcb0198Szhenwei pi# @service: supported service types of a crypto device 845dcb0198Szhenwei pi# 8540b89515SMichael Tokarev# @client: the additional information of the crypto device 865dcb0198Szhenwei pi# 875dcb0198Szhenwei pi# Since: 8.0 885dcb0198Szhenwei pi## 895dcb0198Szhenwei pi{ 'struct': 'QCryptodevInfo', 905dcb0198Szhenwei pi 'data': { 'id': 'str', 915dcb0198Szhenwei pi 'service': ['QCryptodevBackendServiceType'], 925dcb0198Szhenwei pi 'client': ['QCryptodevBackendClient'] } } 935dcb0198Szhenwei pi 945dcb0198Szhenwei pi## 955dcb0198Szhenwei pi# @query-cryptodev: 965dcb0198Szhenwei pi# 975dcb0198Szhenwei pi# Returns information about current crypto devices. 985dcb0198Szhenwei pi# 995dcb0198Szhenwei pi# Returns: a list of @QCryptodevInfo 1005dcb0198Szhenwei pi# 1015dcb0198Szhenwei pi# Since: 8.0 1025dcb0198Szhenwei pi## 1035dcb0198Szhenwei pi{ 'command': 'query-cryptodev', 'returns': ['QCryptodevInfo']} 104