mirror of
git://git.gnupg.org/gnupg.git
synced 2025-07-02 22:46:30 +02:00
gpg: Change format for the key size in --list-key and --edit-key.
* g10/gpg.c (oLegacyListMode, opts, main): Add --legacy-list-mode. * g10/options.h (struct opt): Add field legacy_list_mode. * g10/keydb.h (PUBKEY_STRING_SIZE): New. * g10/keyid.c (pubkey_string): New. * g10/import.c (import_one, import_secret_one): Use pubkey_string. * g10/keylist.c (print_seckey_info): Ditto. (print_pubkey_info, print_card_key_info): Ditto. (list_keyblock_print): Ditto. * g10/mainproc.c (list_node): Ditto. * g10/pkclist.c (do_edit_ownertrust, build_pk_list): Ditto. * g10/keyedit.c (show_key_with_all_names): Ditto. Also change the format. (show_basic_key_info): Ditto. * common/openpgp-oid.c (openpgp_curve_to_oid): Also allow "ed25519". (openpgp_oid_to_curve): Downcase "ed25519" -- For ECC it seems to be better to show the name of the curve and not just the size of the prime field. The curve name does not anymore fit into the "<size><letter>" descriptor (e.g. "2048R") and a fixed length format does not work either. Thus the new format uses "rsa2048" - RSA with 2048 bit "elg1024" - Elgamal with 1024 bit "ed25519" - ECC using the curve Ed25519. "E_1.2.3.4" - ECC using the unsupported curve with OID "1.2.3.4". unless --legacy-list-mode is given. In does not anymore line up nicely in columns thus I expect further changes to this new format. Signed-off-by: Werner Koch <wk@gnupg.org>
This commit is contained in:
parent
2ba818de1a
commit
2c814806d7
11 changed files with 153 additions and 52 deletions
|
@ -2683,6 +2683,7 @@ show_key_with_all_names (KBNODE keyblock, int only_marked, int with_revoker,
|
|||
int i;
|
||||
int do_warn = 0;
|
||||
PKT_public_key *primary = NULL;
|
||||
char pkstrbuf[PUBKEY_STRING_SIZE];
|
||||
|
||||
if (opt.with_colons)
|
||||
{
|
||||
|
@ -2761,15 +2762,20 @@ show_key_with_all_names (KBNODE keyblock, int only_marked, int with_revoker,
|
|||
}
|
||||
|
||||
keyid_from_pk (pk, NULL);
|
||||
tty_printf ("%s%c %4u%c/%s ",
|
||||
tty_printf ("%s%c %s/%s",
|
||||
node->pkt->pkttype == PKT_PUBLIC_KEY ? "pub" :
|
||||
node->pkt->pkttype == PKT_PUBLIC_SUBKEY ? "sub" :
|
||||
node->pkt->pkttype == PKT_SECRET_KEY ? "sec" : "ssb",
|
||||
(node->flag & NODFLG_SELKEY) ? '*' : ' ',
|
||||
nbits_from_pk (pk),
|
||||
pubkey_letter (pk->pubkey_algo), keystr (pk->keyid));
|
||||
pubkey_string (pk, pkstrbuf, sizeof pkstrbuf),
|
||||
keystr (pk->keyid));
|
||||
|
||||
tty_printf (_("created: %s"), datestr_from_pk (pk));
|
||||
if (opt.legacy_list_mode)
|
||||
tty_printf (" ");
|
||||
else
|
||||
tty_printf ("\n ");
|
||||
|
||||
tty_printf (_("created: %s"), datestr_from_pk (pk));
|
||||
tty_printf (" ");
|
||||
if (pk->flags.revoked)
|
||||
tty_printf (_("revoked: %s"), revokestr_from_pk (pk));
|
||||
|
@ -2785,8 +2791,8 @@ show_key_with_all_names (KBNODE keyblock, int only_marked, int with_revoker,
|
|||
&& pk->seckey_info->is_protected
|
||||
&& pk->seckey_info->s2k.mode == 1002)
|
||||
{
|
||||
tty_printf (" ");
|
||||
tty_printf (_("card-no: "));
|
||||
tty_printf ("%*s%s", opt.legacy_list_mode? 21:5, "",
|
||||
_("card-no: "));
|
||||
if (pk->seckey_info->ivlen == 16
|
||||
&& !memcmp (pk->seckey_info->iv,
|
||||
"\xD2\x76\x00\x01\x24\x01", 6))
|
||||
|
@ -2813,7 +2819,9 @@ show_key_with_all_names (KBNODE keyblock, int only_marked, int with_revoker,
|
|||
{
|
||||
if (opt.trust_model != TM_ALWAYS)
|
||||
{
|
||||
tty_printf ("%*s", (int) keystrlen () + 13, "");
|
||||
tty_printf ("%*s",
|
||||
opt.legacy_list_mode?
|
||||
((int) keystrlen () + 13):5, "");
|
||||
/* Ownertrust is only meaningful for the PGP or
|
||||
classic trust models */
|
||||
if (opt.trust_model == TM_PGP
|
||||
|
@ -2865,6 +2873,7 @@ show_basic_key_info (KBNODE keyblock)
|
|||
{
|
||||
KBNODE node;
|
||||
int i;
|
||||
char pkstrbuf[PUBKEY_STRING_SIZE];
|
||||
|
||||
/* The primary key */
|
||||
for (node = keyblock; node; node = node->next)
|
||||
|
@ -2876,12 +2885,12 @@ show_basic_key_info (KBNODE keyblock)
|
|||
|
||||
/* Note, we use the same format string as in other show
|
||||
functions to make the translation job easier. */
|
||||
tty_printf ("%s %4u%c/%s ",
|
||||
tty_printf ("%s %s/%s ",
|
||||
node->pkt->pkttype == PKT_PUBLIC_KEY ? "pub" :
|
||||
node->pkt->pkttype == PKT_PUBLIC_SUBKEY ? "sub" :
|
||||
node->pkt->pkttype == PKT_SECRET_KEY ? "sec" :"ssb",
|
||||
nbits_from_pk (pk),
|
||||
pubkey_letter (pk->pubkey_algo), keystr_from_pk (pk));
|
||||
pubkey_string (pk, pkstrbuf, sizeof pkstrbuf),
|
||||
keystr_from_pk (pk));
|
||||
tty_printf (_("created: %s"), datestr_from_pk (pk));
|
||||
tty_printf (" ");
|
||||
tty_printf (_("expires: %s"), expirestr_from_pk (pk));
|
||||
|
@ -2915,16 +2924,17 @@ show_key_and_fingerprint (KBNODE keyblock)
|
|||
{
|
||||
KBNODE node;
|
||||
PKT_public_key *pk = NULL;
|
||||
char pkstrbuf[PUBKEY_STRING_SIZE];
|
||||
|
||||
for (node = keyblock; node; node = node->next)
|
||||
{
|
||||
if (node->pkt->pkttype == PKT_PUBLIC_KEY)
|
||||
{
|
||||
pk = node->pkt->pkt.public_key;
|
||||
tty_printf ("pub %4u%c/%s %s ",
|
||||
nbits_from_pk (pk),
|
||||
pubkey_letter (pk->pubkey_algo),
|
||||
keystr_from_pk (pk), datestr_from_pk (pk));
|
||||
tty_printf ("pub %s/%s %s ",
|
||||
pubkey_string (pk, pkstrbuf, sizeof pkstrbuf),
|
||||
keystr_from_pk(pk),
|
||||
datestr_from_pk (pk));
|
||||
}
|
||||
else if (node->pkt->pkttype == PKT_USER_ID)
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue