mirror of
git://git.gnupg.org/gnupg.git
synced 2025-01-09 12:54:23 +01:00
* main.h, keylist.c (print_subpackets_colon): Make a public function.
* keyedit.c (print_and_check_one_sig_colon): New. Print a with-colons version of the sig record. (menu_delsig): Call it here for a with-colons delsig.
This commit is contained in:
parent
e7c94128b2
commit
b7be7d59b1
@ -1,3 +1,12 @@
|
|||||||
|
2004-09-13 David Shaw <dshaw@jabberwocky.com>
|
||||||
|
|
||||||
|
* main.h, keylist.c (print_subpackets_colon): Make a public
|
||||||
|
function.
|
||||||
|
|
||||||
|
* keyedit.c (print_and_check_one_sig_colon): New. Print a
|
||||||
|
with-colons version of the sig record.
|
||||||
|
(menu_delsig): Call it here for a with-colons delsig.
|
||||||
|
|
||||||
2004-09-12 David Shaw <dshaw@jabberwocky.com>
|
2004-09-12 David Shaw <dshaw@jabberwocky.com>
|
||||||
|
|
||||||
* options.h, keylist.c (print_one_subpacket,
|
* options.h, keylist.c (print_one_subpacket,
|
||||||
|
@ -94,6 +94,71 @@ struct sign_attrib {
|
|||||||
char *trust_regexp;
|
char *trust_regexp;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
/* TODO: Fix duplicated code between here and the check-sigs/list-sigs
|
||||||
|
code in keylist.c. */
|
||||||
|
static int
|
||||||
|
print_and_check_one_sig_colon( KBNODE keyblock, KBNODE node,
|
||||||
|
int *inv_sigs, int *no_key, int *oth_err,
|
||||||
|
int *is_selfsig, int print_without_key )
|
||||||
|
{
|
||||||
|
PKT_signature *sig = node->pkt->pkt.signature;
|
||||||
|
int rc, sigrc;
|
||||||
|
|
||||||
|
/* TODO: Make sure a cached sig record here still has the pk that
|
||||||
|
issued it. See also keylist.c:list_keyblock_print */
|
||||||
|
|
||||||
|
switch((rc=check_key_signature(keyblock,node,is_selfsig)))
|
||||||
|
{
|
||||||
|
case 0:
|
||||||
|
node->flag &= ~(NODFLG_BADSIG|NODFLG_NOKEY|NODFLG_SIGERR);
|
||||||
|
sigrc = '!';
|
||||||
|
break;
|
||||||
|
case G10ERR_BAD_SIGN:
|
||||||
|
node->flag = NODFLG_BADSIG;
|
||||||
|
sigrc = '-';
|
||||||
|
if( inv_sigs )
|
||||||
|
++*inv_sigs;
|
||||||
|
break;
|
||||||
|
case G10ERR_NO_PUBKEY:
|
||||||
|
case G10ERR_UNU_PUBKEY:
|
||||||
|
node->flag = NODFLG_NOKEY;
|
||||||
|
sigrc = '?';
|
||||||
|
if( no_key )
|
||||||
|
++*no_key;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
node->flag = NODFLG_SIGERR;
|
||||||
|
sigrc = '%';
|
||||||
|
if( oth_err )
|
||||||
|
++*oth_err;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if( sigrc != '?' || print_without_key )
|
||||||
|
{
|
||||||
|
printf("sig:%c::%d:%08lX%08lX:%lu:%lu:",
|
||||||
|
sigrc,sig->pubkey_algo,(ulong)sig->keyid[1],(ulong)sig->keyid[2],
|
||||||
|
(ulong)sig->timestamp,(ulong)sig->expiredate);
|
||||||
|
|
||||||
|
if(sig->trust_depth || sig->trust_value)
|
||||||
|
printf("%d %d",sig->trust_depth,sig->trust_value);
|
||||||
|
|
||||||
|
printf(":");
|
||||||
|
|
||||||
|
if(sig->trust_regexp)
|
||||||
|
print_string(stdout,sig->trust_regexp,strlen(sig->trust_regexp),':');
|
||||||
|
|
||||||
|
printf("::%02x%c\n",sig->sig_class,sig->flags.exportable?'x':'l');
|
||||||
|
|
||||||
|
if(opt.show_subpackets)
|
||||||
|
print_subpackets_colon(sig);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (sigrc == '!');
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/****************
|
/****************
|
||||||
* Print information about a signature, check it and return true
|
* Print information about a signature, check it and return true
|
||||||
* if the signature is okay. NODE must be a signature packet.
|
* if the signature is okay. NODE must be a signature packet.
|
||||||
@ -255,8 +320,6 @@ check_all_keysigs( KBNODE keyblock, int only_selected )
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
static int
|
static int
|
||||||
sign_mk_attrib( PKT_signature *sig, void *opaque )
|
sign_mk_attrib( PKT_signature *sig, void *opaque )
|
||||||
{
|
{
|
||||||
@ -2534,10 +2597,15 @@ menu_delsig( KBNODE pub_keyblock )
|
|||||||
tty_print_utf8_string( uid->name, uid->len );
|
tty_print_utf8_string( uid->name, uid->len );
|
||||||
tty_printf("\n");
|
tty_printf("\n");
|
||||||
|
|
||||||
okay = inv_sig = no_key = other_err = 0;
|
okay = inv_sig = no_key = other_err = 0;
|
||||||
valid = print_and_check_one_sig( pub_keyblock, node,
|
if(opt.with_colons)
|
||||||
&inv_sig, &no_key, &other_err,
|
valid = print_and_check_one_sig_colon( pub_keyblock, node,
|
||||||
&selfsig, 1 );
|
&inv_sig, &no_key, &other_err,
|
||||||
|
&selfsig, 1 );
|
||||||
|
else
|
||||||
|
valid = print_and_check_one_sig( pub_keyblock, node,
|
||||||
|
&inv_sig, &no_key, &other_err,
|
||||||
|
&selfsig, 1 );
|
||||||
|
|
||||||
if( valid ) {
|
if( valid ) {
|
||||||
okay = cpr_get_answer_yes_no_quit(
|
okay = cpr_get_answer_yes_no_quit(
|
||||||
|
@ -571,7 +571,7 @@ print_one_subpacket(sigsubpkttype_t type,size_t len,int flags,const byte *buf)
|
|||||||
printf("\n");
|
printf("\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
void
|
||||||
print_subpackets_colon(PKT_signature *sig)
|
print_subpackets_colon(PKT_signature *sig)
|
||||||
{
|
{
|
||||||
byte *i;
|
byte *i;
|
||||||
|
@ -217,6 +217,7 @@ void release_revocation_reason_info( struct revocation_reason_info *reason );
|
|||||||
/*-- keylist.c --*/
|
/*-- keylist.c --*/
|
||||||
void public_key_list( STRLIST list );
|
void public_key_list( STRLIST list );
|
||||||
void secret_key_list( STRLIST list );
|
void secret_key_list( STRLIST list );
|
||||||
|
void print_subpackets_colon(PKT_signature *sig);
|
||||||
void reorder_keyblock (KBNODE keyblock);
|
void reorder_keyblock (KBNODE keyblock);
|
||||||
void list_keyblock( KBNODE keyblock, int secret, int fpr, void *opaque );
|
void list_keyblock( KBNODE keyblock, int secret, int fpr, void *opaque );
|
||||||
void print_fingerprint (PKT_public_key *pk, PKT_secret_key *sk, int mode);
|
void print_fingerprint (PKT_public_key *pk, PKT_secret_key *sk, int mode);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user