mirror of
git://git.gnupg.org/gnupg.git
synced 2024-12-22 10:19:57 +01:00
* keylist.c (email_kludge): Reworked.
* certdump.c (gpgsm_print_serial, gpgsm_dump_serial): Cast printf arg to unsigned. * call-dirmngr.c (gpgsm_dirmngr_run_command): Ditto
This commit is contained in:
parent
8889f4a2ee
commit
68191d0c93
3
THANKS
3
THANKS
@ -1,7 +1,8 @@
|
||||
|
||||
Alexander Belopolsky belopolsky at mac.com
|
||||
Andrew J. Schorr aschorr at telemetry-investments.com
|
||||
Kazu Yamamoto kazu@iij.ad.jp
|
||||
Charly Avital shavital at mac.com
|
||||
Kazu Yamamoto kazu at iij.ad.jp
|
||||
Michael Nottebrock michaelnottebrock at gmx.net
|
||||
Ray Link rlink at pitt.edu
|
||||
Richard Lefebvre rick at cerca.umontreal.ca
|
||||
|
2
TODO
2
TODO
@ -103,3 +103,5 @@ might want to have an agent context for each service request
|
||||
|
||||
|
||||
|
||||
* sm/
|
||||
** --include-certs seems to be a dummy option.
|
||||
|
@ -1,3 +1,16 @@
|
||||
2005-07-05 Werner Koch <wk@g10code.com>
|
||||
|
||||
* app-openpgp.c (do_readkey): Return a mallcoed copy of the key as
|
||||
required by the description. Thanks to Moritz for tracking this
|
||||
problem down.
|
||||
|
||||
2005-06-21 Werner Koch <wk@g10code.com>
|
||||
|
||||
* scdaemon.c (main): ifdef call to ccid_set_debug_level.
|
||||
|
||||
* apdu.c (reset_pcsc_reader, open_pcsc_reader): Cast size_t to
|
||||
ulong for printf.
|
||||
|
||||
2005-06-06 Werner Koch <wk@g10code.com>
|
||||
|
||||
* scdaemon.c (main): New option --debug-allow-core-dump.
|
||||
|
@ -809,7 +809,8 @@ reset_pcsc_reader (int slot)
|
||||
len -= 4; /* Already read the error code. */
|
||||
if (len > DIM (slotp->atr))
|
||||
{
|
||||
log_error ("PC/SC returned a too large ATR (len=%x)\n", len);
|
||||
log_error ("PC/SC returned a too large ATR (len=%lx)\n",
|
||||
(unsigned long)len);
|
||||
sw = SW_HOST_GENERAL_ERROR;
|
||||
goto command_failed;
|
||||
}
|
||||
@ -1425,7 +1426,8 @@ open_pcsc_reader (const char *portstr)
|
||||
len -= 4; /* Already read the error code. */
|
||||
if (len > DIM (slotp->atr))
|
||||
{
|
||||
log_error ("PC/SC returned a too large ATR (len=%x)\n", len);
|
||||
log_error ("PC/SC returned a too large ATR (len=%lx)\n",
|
||||
(unsigned long)len);
|
||||
goto command_failed;
|
||||
}
|
||||
err = (msgbuf[5] << 24) | (msgbuf[6] << 16) | (msgbuf[7] << 8 ) | msgbuf[8];
|
||||
|
@ -1230,8 +1230,15 @@ do_readkey (app_t app, const char *keyid, unsigned char **pk, size_t *pklen)
|
||||
buf = app->app_local->pk[keyno-1].key;
|
||||
if (!buf)
|
||||
return gpg_error (GPG_ERR_NO_PUBKEY);
|
||||
*pk = buf;
|
||||
*pklen = app->app_local->pk[keyno-1].keylen;;
|
||||
*pk = xtrymalloc (*pklen);
|
||||
if (!*pk)
|
||||
{
|
||||
err = gpg_error_from_errno (errno);
|
||||
*pklen = 0;
|
||||
return err;
|
||||
}
|
||||
memcpy (*pk, buf, *pklen);
|
||||
return 0;
|
||||
#else
|
||||
return gpg_error (GPG_ERR_NOT_IMPLEMENTED);
|
||||
|
@ -456,7 +456,9 @@ main (int argc, char **argv )
|
||||
allow_coredump = 1;
|
||||
break;
|
||||
case oDebugCCIDDriver:
|
||||
#ifdef HAVE_LIBUSB
|
||||
ccid_set_debug_level (ccid_set_debug_level (-1)+1);
|
||||
#endif /*HAVE_LIBUSB*/
|
||||
break;
|
||||
case oDebugDisableTicker: ticker_disabled = 1; break;
|
||||
|
||||
|
@ -1,3 +1,11 @@
|
||||
2005-07-20 Werner Koch <wk@g10code.com>
|
||||
|
||||
* keylist.c (email_kludge): Reworked.
|
||||
|
||||
* certdump.c (gpgsm_print_serial, gpgsm_dump_serial): Cast printf
|
||||
arg to unsigned.
|
||||
* call-dirmngr.c (gpgsm_dirmngr_run_command): Ditto
|
||||
|
||||
2005-07-19 Werner Koch <wk@g10code.com>
|
||||
|
||||
* fingerprint.c (gpgsm_get_certid): Cast printf arg to unsigned.
|
||||
|
@ -827,7 +827,7 @@ gpgsm_dirmngr_run_command (CTRL ctrl, const char *command,
|
||||
*p++ = '+';
|
||||
else if (!isprint (*s) || *s == '+')
|
||||
{
|
||||
sprintf (p, "%%%02X", *s);
|
||||
sprintf (p, "%%%02X", *(const unsigned char *)s);
|
||||
p += 3;
|
||||
}
|
||||
else
|
||||
|
@ -70,7 +70,7 @@ gpgsm_print_serial (FILE *fp, ksba_const_sexp_t sn)
|
||||
else
|
||||
{
|
||||
for (p++; n; n--, p++)
|
||||
fprintf (fp, "%02X", *p);
|
||||
fprintf (fp, "%02X", *(const unsigned char*)p);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -98,7 +98,7 @@ gpgsm_dump_serial (ksba_const_sexp_t sn)
|
||||
else
|
||||
{
|
||||
for (p++; n; n--, p++)
|
||||
log_printf ("%02X", *p);
|
||||
log_printf ("%02X", *(const unsigned char *)p);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
26
sm/keylist.c
26
sm/keylist.c
@ -251,30 +251,42 @@ print_time (gnupg_isotime_t t, FILE *fp)
|
||||
}
|
||||
|
||||
|
||||
/* return an allocated string with the email address extracted from a
|
||||
/* Return an allocated string with the email address extracted from a
|
||||
DN */
|
||||
static char *
|
||||
email_kludge (const char *name)
|
||||
{
|
||||
const char *p;
|
||||
const char *p, *string;
|
||||
unsigned char *buf;
|
||||
int n;
|
||||
|
||||
if (strncmp (name, "1.2.840.113549.1.9.1=#", 22))
|
||||
return NULL;
|
||||
string = name;
|
||||
for (;;)
|
||||
{
|
||||
p = strstr (string, "1.2.840.113549.1.9.1=#");
|
||||
if (!p)
|
||||
return NULL;
|
||||
if (p == name || (p > string+1 && p[-1] == ',' && p[-2] != '\\'))
|
||||
{
|
||||
name = p + 22;
|
||||
break;
|
||||
}
|
||||
string = p + 22;
|
||||
}
|
||||
|
||||
|
||||
/* This looks pretty much like an email address in the subject's DN
|
||||
we use this to add an additional user ID entry. This way,
|
||||
openSSL generated keys get a nicer and usable listing */
|
||||
name += 22;
|
||||
for (n=0, p=name; hexdigitp (p) && hexdigitp (p+1); p +=2, n++)
|
||||
;
|
||||
if (*p != '#' || !n)
|
||||
if (!n)
|
||||
return NULL;
|
||||
buf = xtrymalloc (n+3);
|
||||
if (!buf)
|
||||
return NULL; /* oops, out of core */
|
||||
*buf = '<';
|
||||
for (n=1, p=name; *p != '#'; p +=2, n++)
|
||||
for (n=1, p=name; hexdigitp (p); p +=2, n++)
|
||||
buf[n] = xtoi_2 (p);
|
||||
buf[n++] = '>';
|
||||
buf[n] = 0;
|
||||
|
@ -1109,7 +1109,7 @@ write_status_text_and_buffer ( int no, const char *string,
|
||||
if (s != buffer)
|
||||
fwrite (buffer, s-buffer, 1, statusfp );
|
||||
if ( esc ) {
|
||||
fprintf (statusfp, "%%%02X", *(const byte*)s );
|
||||
fprintf (statusfp, "%%%02X", *(const unsigned char*)s );
|
||||
s++; n--;
|
||||
}
|
||||
buffer = s;
|
||||
|
Loading…
x
Reference in New Issue
Block a user