aboutsummaryrefslogtreecommitdiff
path: root/libhal.py
diff options
context:
space:
mode:
authorRob Austein <sra@hactrn.net>2016-11-01 19:47:50 -0400
committerRob Austein <sra@hactrn.net>2016-11-01 19:47:50 -0400
commitd844d764a4f0614bf378331b007467de288f74eb (patch)
tree57b8645d338f1549d2b06c4bc3b22c0a6ef950bc /libhal.py
parentd3301ac269431c5aa45061abdb2d4400793b1eee (diff)
Add hal_rpc_pkey_get_key_curve().
Incidental minor refactoring of hal_rpc_server_dispatch().
Diffstat (limited to 'libhal.py')
-rw-r--r--libhal.py9
1 files changed, 9 insertions, 0 deletions
diff --git a/libhal.py b/libhal.py
index 745c761..fbf86ff 100644
--- a/libhal.py
+++ b/libhal.py
@@ -182,6 +182,7 @@ RPCFunc.define('''
RPC_FUNC_PKEY_SET_ATTRIBUTE,
RPC_FUNC_PKEY_GET_ATTRIBUTE,
RPC_FUNC_PKEY_DELETE_ATTRIBUTE,
+ RPC_FUNC_PKEY_GET_KEY_CURVE,
''')
class HALDigestAlgorithm(Enum): pass
@@ -368,6 +369,10 @@ class PKey(Handle):
return self.hsm.pkey_get_key_type(self)
@cached_property
+ def key_curve(self):
+ return self.hsm.pkey_get_key_curve(self)
+
+ @cached_property
def key_flags(self):
return self.hsm.pkey_get_key_flags(self)
@@ -599,6 +604,10 @@ class HSM(object):
with self.rpc(RPC_FUNC_PKEY_GET_KEY_TYPE, pkey) as r:
return HALKeyType.index[r.unpack_uint()]
+ def pkey_get_key_curve(self, pkey):
+ with self.rpc(RPC_FUNC_PKEY_GET_KEY_CURVE, pkey) as r:
+ return HALCurve.index[r.unpack_uint()]
+
def pkey_get_key_flags(self, pkey):
with self.rpc(RPC_FUNC_PKEY_GET_KEY_FLAGS, pkey) as r:
return r.unpack_uint()