mirror of
git://git.gnupg.org/gnupg.git
synced 2025-02-21 19:48:05 +01:00
* packet.h, build-packet.c (sig_to_notation), keygen.c
(keygen_add_notations): Tweak to handle non-human-readable notation values.
This commit is contained in:
parent
4fea8fdbbb
commit
889c4afd78
@ -1,5 +1,9 @@
|
||||
2006-03-08 David Shaw <dshaw@jabberwocky.com>
|
||||
|
||||
* packet.h, build-packet.c (sig_to_notation), keygen.c
|
||||
(keygen_add_notations): Tweak to handle non-human-readable
|
||||
notation values.
|
||||
|
||||
* options.h, sign.c (mk_notation_policy_etc), gpg.c
|
||||
(add_notation_data): Use it here for the various notation
|
||||
commands.
|
||||
|
@ -1000,18 +1000,18 @@ sig_to_notation(PKT_signature *sig)
|
||||
|
||||
if(p[0]&0x80)
|
||||
{
|
||||
n->flags.human=1;
|
||||
n->value=xmalloc(n2+1);
|
||||
memcpy(n->value,&p[8+n1],n2);
|
||||
n->value[n2]='\0';
|
||||
}
|
||||
else
|
||||
{
|
||||
n->value=xmalloc(2+strlen(_("not human readable"))+2+1);
|
||||
strcpy(n->value,"[ ");
|
||||
strcat(n->value,_("not human readable"));
|
||||
strcat(n->value," ]");
|
||||
n->value=xmalloc(n2);
|
||||
n->blen=n2;
|
||||
}
|
||||
|
||||
memcpy(n->value,&p[8+n1],n2);
|
||||
|
||||
n->flags.critical=crit;
|
||||
|
||||
n->next=list;
|
||||
|
@ -708,12 +708,15 @@ keygen_add_notations(PKT_signature *sig,void *opaque)
|
||||
n1=strlen(notation->name);
|
||||
if(notation->altvalue)
|
||||
n2=strlen(notation->altvalue);
|
||||
else if(!notation->flags.human)
|
||||
n2=notation->blen;
|
||||
else
|
||||
n2=strlen(notation->value);
|
||||
|
||||
buf = xmalloc( 8 + n1 + n2 );
|
||||
|
||||
buf[0] = 0x80; /* human readable */
|
||||
/* human readable or not */
|
||||
buf[0] = notation->flags.human?0x80:0;
|
||||
buf[1] = buf[2] = buf[3] = 0;
|
||||
buf[4] = n1 >> 8;
|
||||
buf[5] = n1;
|
||||
|
@ -411,10 +411,12 @@ struct notation
|
||||
{
|
||||
char *name;
|
||||
char *value;
|
||||
size_t blen;
|
||||
char *altvalue;
|
||||
struct
|
||||
{
|
||||
unsigned int critical:1;
|
||||
unsigned int human:1;
|
||||
unsigned int ignore:1;
|
||||
} flags;
|
||||
struct notation *next;
|
||||
|
Loading…
x
Reference in New Issue
Block a user