return pakfire.keyring.import_key(keyfile)
-def key_export(keyid, keyfile, **pakfire_args):
+def key_export(keyid, keyfile, secret=False, **pakfire_args):
pakfire = Pakfire(**pakfire_args)
- return pakfire.keyring.export_key(keyid, keyfile)
+ return pakfire.keyring.export_key(keyid, keyfile, secret=secret)
def key_delete(keyid, **pakfire_args):
pakfire = Pakfire(**pakfire_args)
help=_("The ID of the key to export."))
sub_export.add_argument("filename", nargs=1,
help=_("Write the key to this file."))
+ sub_export.add_argument("--secret", action="store_true",
+ help=_("Export the secret key, too."))
sub_export.add_argument("action", action="store_const", const="export")
def parse_command_delete(self):
def handle_export(self):
keyid = self.args.keyid[0]
filename = self.args.filename[0]
+ secret = self.args.secret
- pakfire.key_export(keyid, filename, **self.pakfire_args)
+ pakfire.key_export(keyid, filename, secret=secret, **self.pakfire_args)
def handle_delete(self):
keyid = self.args.keyid[0]
log.info(_("Successfully imported %s.") % keyfile)
- def export_key(self, keyid, keyfile):
+ def export_key(self, keyid, keyfile, secret=False):
keydata = io.BytesIO()
- self.ctx.export(keyid, keydata)
+ self.ctx.export(keyid, keydata, secret)
f = open(keyfile, "wb")
f.write(keydata.getvalue())