]>
Commit | Line | Data |
---|---|---|
14c9fd16 ZP |
1 | # -*- Mode: Python -*- |
2 | # vim: filetype=python | |
3 | # | |
4 | # This work is licensed under the terms of the GNU GPL, version 2 or later. | |
5 | # See the COPYING file in the top-level directory. | |
6 | ||
4622c706 MA |
7 | ## |
8 | # = Cryptography devices | |
9 | ## | |
10 | ||
999c789f ZP |
11 | ## |
12 | # @QCryptodevBackendAlgType: | |
13 | # | |
14 | # The supported algorithm types of a crypto device. | |
15 | # | |
16 | # @sym: symmetric encryption | |
a937b6aa | 17 | # |
999c789f ZP |
18 | # @asym: asymmetric Encryption |
19 | # | |
20 | # Since: 8.0 | |
21 | ## | |
22 | { 'enum': 'QCryptodevBackendAlgType', | |
23 | 'prefix': 'QCRYPTODEV_BACKEND_ALG', | |
24 | 'data': ['sym', 'asym']} | |
25 | ||
bc304a64 ZP |
26 | ## |
27 | # @QCryptodevBackendServiceType: | |
28 | # | |
29 | # The supported service types of a crypto device. | |
30 | # | |
31 | # Since: 8.0 | |
32 | ## | |
33 | { 'enum': 'QCryptodevBackendServiceType', | |
34 | 'prefix': 'QCRYPTODEV_BACKEND_SERVICE', | |
35 | 'data': ['cipher', 'hash', 'mac', 'aead', 'akcipher']} | |
36 | ||
14c9fd16 ZP |
37 | ## |
38 | # @QCryptodevBackendType: | |
39 | # | |
40 | # The crypto device backend type | |
41 | # | |
42 | # @builtin: the QEMU builtin support | |
a937b6aa | 43 | # |
14c9fd16 | 44 | # @vhost-user: vhost-user |
a937b6aa | 45 | # |
14c9fd16 ZP |
46 | # @lkcf: Linux kernel cryptographic framework |
47 | # | |
48 | # Since: 8.0 | |
49 | ## | |
50 | { 'enum': 'QCryptodevBackendType', | |
51 | 'prefix': 'QCRYPTODEV_BACKEND_TYPE', | |
52 | 'data': ['builtin', 'vhost-user', 'lkcf']} | |
5dcb0198 ZP |
53 | |
54 | ## | |
55 | # @QCryptodevBackendClient: | |
56 | # | |
57 | # Information about a queue of crypto device. | |
58 | # | |
59 | # @queue: the queue index of the crypto device | |
60 | # | |
61 | # @type: the type of the crypto device | |
62 | # | |
63 | # Since: 8.0 | |
64 | ## | |
65 | { 'struct': 'QCryptodevBackendClient', | |
66 | 'data': { 'queue': 'uint32', | |
67 | 'type': 'QCryptodevBackendType' } } | |
68 | ||
69 | ## | |
70 | # @QCryptodevInfo: | |
71 | # | |
72 | # Information about a crypto device. | |
73 | # | |
74 | # @id: the id of the crypto device | |
75 | # | |
76 | # @service: supported service types of a crypto device | |
77 | # | |
40b89515 | 78 | # @client: the additional information of the crypto device |
5dcb0198 ZP |
79 | # |
80 | # Since: 8.0 | |
81 | ## | |
82 | { 'struct': 'QCryptodevInfo', | |
83 | 'data': { 'id': 'str', | |
84 | 'service': ['QCryptodevBackendServiceType'], | |
85 | 'client': ['QCryptodevBackendClient'] } } | |
86 | ||
87 | ## | |
88 | # @query-cryptodev: | |
89 | # | |
90 | # Returns information about current crypto devices. | |
91 | # | |
92 | # Returns: a list of @QCryptodevInfo | |
93 | # | |
94 | # Since: 8.0 | |
95 | ## | |
96 | { 'command': 'query-cryptodev', 'returns': ['QCryptodevInfo']} |