mirror of
git://git.gnupg.org/gnupg.git
synced 2025-04-11 22:01:08 +02:00
* configure.ac: Required newer versions of some libraries.
* misc.c (openpgp_pk_algo_usage): Allow AUTH where SIGN is allowed. * keygen.c (ask_passphrase): No need to allocated S2K in secure memory. * scdaemon.c (main): --pcsc-driver again defaults to pcsclite. David Corcoran was so kind to remove the GPL incompatible advertisng clause from pcsclite. * apdu.c (apdu_open_reader): Actually make pcsc-driver option work.
This commit is contained in:
parent
25430119e8
commit
be034cf34c
@ -1,3 +1,9 @@
|
|||||||
|
2003-09-06 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
|
Released 1.9.1.
|
||||||
|
|
||||||
|
* configure.ac: Required newer versions of some libraries.
|
||||||
|
|
||||||
2003-09-02 Werner Koch <wk@gnupg.org>
|
2003-09-02 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
* configure.ac (HAVE_LIBUSB): Added a simple test for libusb.
|
* configure.ac (HAVE_LIBUSB): Added a simple test for libusb.
|
||||||
|
9
NEWS
9
NEWS
@ -1,10 +1,15 @@
|
|||||||
Noteworthy changes in version 1.9.1 (unreleased)
|
Noteworthy changes in version 1.9.1 (2003-09-06)
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
|
|
||||||
* Support for OpenSC is back. scdaemon support a --disable-opensc to
|
* Support for OpenSC is back. scdaemon supports a --disable-opensc to
|
||||||
disable OpenSC use at runtime, so that PC/SC or ct-API can still be
|
disable OpenSC use at runtime, so that PC/SC or ct-API can still be
|
||||||
used directly.
|
used directly.
|
||||||
|
|
||||||
|
* Rudimentary support for the SCR335 smartcard reader using an
|
||||||
|
internal driver. Requires current libusb from CVS.
|
||||||
|
|
||||||
|
* Bug fixes.
|
||||||
|
|
||||||
|
|
||||||
Noteworthy changes in version 1.9.0 (2003-08-05)
|
Noteworthy changes in version 1.9.0 (2003-08-05)
|
||||||
------------------------------------------------
|
------------------------------------------------
|
||||||
|
12
configure.ac
12
configure.ac
@ -22,16 +22,16 @@
|
|||||||
AC_PREREQ(2.52)
|
AC_PREREQ(2.52)
|
||||||
# Version number: Remember to change it immediately *after* a release.
|
# Version number: Remember to change it immediately *after* a release.
|
||||||
# Add a "-cvs" prefix for non-released code.
|
# Add a "-cvs" prefix for non-released code.
|
||||||
AC_INIT(gnupg, 1.9.1-cvs, gnupg-devel@gnupg.org)
|
AC_INIT(gnupg, 1.9.1, gnupg-devel@gnupg.org)
|
||||||
# Set development_version to yes if the minor number is odd or you
|
# Set development_version to yes if the minor number is odd or you
|
||||||
# feel that the default check for a development version is not
|
# feel that the default check for a development version is not
|
||||||
# sufficient.
|
# sufficient.
|
||||||
development_version=yes
|
development_version=yes
|
||||||
NEED_GPG_ERROR_VERSION=0.2
|
NEED_GPG_ERROR_VERSION=0.4
|
||||||
NEED_LIBGCRYPT_VERSION=1.1.42
|
NEED_LIBGCRYPT_VERSION=1.1.43
|
||||||
NEED_LIBASSUAN_VERSION=0.6.0
|
NEED_LIBASSUAN_VERSION=0.6.0
|
||||||
NEED_KSBA_VERSION=0.4.6
|
NEED_KSBA_VERSION=0.4.6
|
||||||
NEED_OPENSC_VERSION=0.7.0
|
NEED_OPENSC_VERSION=0.8.0
|
||||||
|
|
||||||
|
|
||||||
PACKAGE=$PACKAGE_NAME
|
PACKAGE=$PACKAGE_NAME
|
||||||
@ -378,10 +378,10 @@ AM_PATH_KSBA("$NEED_KSBA_VERSION",have_ksba=yes,have_ksba=no)
|
|||||||
|
|
||||||
#
|
#
|
||||||
# libusb allows us to use the integrated CCID smartcard reader driver.
|
# libusb allows us to use the integrated CCID smartcard reader driver.
|
||||||
|
#
|
||||||
# Note, that we need the CVS version. FIXME: libusb should have a
|
# Note, that we need the CVS version. FIXME: libusb should have a
|
||||||
# regular check as the other libraries do.
|
# regular check as the other libraries do.
|
||||||
|
#
|
||||||
AC_CHECK_LIB(usb, usb_find_device,
|
AC_CHECK_LIB(usb, usb_find_device,
|
||||||
[ LIBUSB_LIBS="$LIBUSB_LIBS -lusb"
|
[ LIBUSB_LIBS="$LIBUSB_LIBS -lusb"
|
||||||
AC_DEFINE(HAVE_LIBUSB,1,
|
AC_DEFINE(HAVE_LIBUSB,1,
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
2003-09-06 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
|
* misc.c (openpgp_pk_algo_usage): Allow AUTH where SIGN is allowed.
|
||||||
|
|
||||||
|
* keygen.c (ask_passphrase): No need to allocated S2K in secure
|
||||||
|
memory.
|
||||||
|
|
||||||
2003-09-04 Werner Koch <wk@gnupg.org>
|
2003-09-04 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
* keygen.c (do_add_key_flags, parse_parameter_usage)
|
* keygen.c (do_add_key_flags, parse_parameter_usage)
|
||||||
|
@ -1629,7 +1629,7 @@ ask_passphrase( STRING2KEY **ret_s2k )
|
|||||||
|
|
||||||
tty_printf(_("You need a Passphrase to protect your secret key.\n\n") );
|
tty_printf(_("You need a Passphrase to protect your secret key.\n\n") );
|
||||||
|
|
||||||
s2k = xmalloc_secure ( sizeof *s2k );
|
s2k = xmalloc ( sizeof *s2k );
|
||||||
for(;;) {
|
for(;;) {
|
||||||
s2k->mode = opt.s2k_mode;
|
s2k->mode = opt.s2k_mode;
|
||||||
s2k->hash_algo = opt.s2k_digest_algo;
|
s2k->hash_algo = opt.s2k_digest_algo;
|
||||||
|
@ -260,7 +260,7 @@ openpgp_pk_algo_usage ( int algo )
|
|||||||
/* they are hardwired in gpg 1.0 */
|
/* they are hardwired in gpg 1.0 */
|
||||||
switch ( algo ) {
|
switch ( algo ) {
|
||||||
case PUBKEY_ALGO_RSA:
|
case PUBKEY_ALGO_RSA:
|
||||||
use = PUBKEY_USAGE_SIG | PUBKEY_USAGE_ENC;
|
use = PUBKEY_USAGE_SIG | PUBKEY_USAGE_ENC | PUBKEY_USAGE_AUTH;
|
||||||
break;
|
break;
|
||||||
case PUBKEY_ALGO_RSA_E:
|
case PUBKEY_ALGO_RSA_E:
|
||||||
use = PUBKEY_USAGE_ENC;
|
use = PUBKEY_USAGE_ENC;
|
||||||
@ -272,10 +272,10 @@ openpgp_pk_algo_usage ( int algo )
|
|||||||
use = PUBKEY_USAGE_ENC;
|
use = PUBKEY_USAGE_ENC;
|
||||||
break;
|
break;
|
||||||
case PUBKEY_ALGO_DSA:
|
case PUBKEY_ALGO_DSA:
|
||||||
use = PUBKEY_USAGE_SIG;
|
use = PUBKEY_USAGE_SIG | PUBKEY_USAGE_AUTH;
|
||||||
break;
|
break;
|
||||||
case PUBKEY_ALGO_ELGAMAL:
|
case PUBKEY_ALGO_ELGAMAL:
|
||||||
use = PUBKEY_USAGE_SIG | PUBKEY_USAGE_ENC;
|
use = PUBKEY_USAGE_SIG | PUBKEY_USAGE_ENC | PUBKEY_USAGE_AUTH;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
|
@ -1,3 +1,10 @@
|
|||||||
|
2003-09-06 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
|
* scdaemon.c (main): --pcsc-driver again defaults to pcsclite.
|
||||||
|
David Corcoran was so kind to remove the GPL incompatible
|
||||||
|
advertisng clause from pcsclite.
|
||||||
|
* apdu.c (apdu_open_reader): Actually make pcsc-driver option work.
|
||||||
|
|
||||||
2003-09-05 Werner Koch <wk@gnupg.org>
|
2003-09-05 Werner Koch <wk@gnupg.org>
|
||||||
|
|
||||||
* ccid-driver.c: More work, data can now actually be retrieved.
|
* ccid-driver.c: More work, data can now actually be retrieved.
|
||||||
|
18
scd/apdu.c
18
scd/apdu.c
@ -823,8 +823,8 @@ osc_send_apdu (int slot, unsigned char *apdu, size_t apdulen,
|
|||||||
|
|
||||||
/* Open the reader and return an internal slot number or -1 on
|
/* Open the reader and return an internal slot number or -1 on
|
||||||
error. If PORTSTR is NULL we default to a suitable port (for ctAPI:
|
error. If PORTSTR is NULL we default to a suitable port (for ctAPI:
|
||||||
the first USB reader. For PC/SC the first listed reader). IF
|
the first USB reader. For PC/SC the first listed reader). If
|
||||||
OpenSC support is cmpiled in, we first try to use OpenSC. */
|
OpenSC support is compiled in, we first try to use OpenSC. */
|
||||||
int
|
int
|
||||||
apdu_open_reader (const char *portstr)
|
apdu_open_reader (const char *portstr)
|
||||||
{
|
{
|
||||||
@ -839,7 +839,7 @@ apdu_open_reader (const char *portstr)
|
|||||||
if (slot != -1)
|
if (slot != -1)
|
||||||
return slot; /* got one */
|
return slot; /* got one */
|
||||||
}
|
}
|
||||||
#endif
|
#endif /* HAVE_LIBUSB */
|
||||||
|
|
||||||
#ifdef HAVE_OPENSC
|
#ifdef HAVE_OPENSC
|
||||||
if (!opt.disable_opensc)
|
if (!opt.disable_opensc)
|
||||||
@ -886,17 +886,11 @@ apdu_open_reader (const char *portstr)
|
|||||||
{
|
{
|
||||||
void *handle;
|
void *handle;
|
||||||
|
|
||||||
if (!opt.pcsc_driver || !*opt.pcsc_driver)
|
handle = dlopen (opt.pcsc_driver, RTLD_LAZY);
|
||||||
{
|
|
||||||
log_error ("no PC/SC driver has been specified\n");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
handle = dlopen ("libpcsclite.so", RTLD_LAZY);
|
|
||||||
if (!handle)
|
if (!handle)
|
||||||
{
|
{
|
||||||
log_error ("apdu_open_reader: failed to open driver: %s",
|
log_error ("apdu_open_reader: failed to open driver `%s': %s",
|
||||||
dlerror ());
|
opt.pcsc_driver, dlerror ());
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -286,7 +286,9 @@ bulk_in (ccid_driver_t handle, unsigned char *buffer, size_t length,
|
|||||||
rc = usb_bulk_read (handle->idev,
|
rc = usb_bulk_read (handle->idev,
|
||||||
0x82,
|
0x82,
|
||||||
buffer, length,
|
buffer, length,
|
||||||
1000 /* ms timeout */ );
|
10000 /* ms timeout */ );
|
||||||
|
/* Fixme: instead of using a 10 second timeout we should better
|
||||||
|
handle the timeout here and retry if appropriate. */
|
||||||
if (rc < 0)
|
if (rc < 0)
|
||||||
{
|
{
|
||||||
DEBUGOUT_1 ("usb_bulk_read error: %s\n", strerror (errno));
|
DEBUGOUT_1 ("usb_bulk_read error: %s\n", strerror (errno));
|
||||||
@ -556,10 +558,10 @@ ccid_transceive (ccid_driver_t handle,
|
|||||||
DEBUGOUT_CONT_1 (" %02X", msg[i]);
|
DEBUGOUT_CONT_1 (" %02X", msg[i]);
|
||||||
DEBUGOUT_LF ();
|
DEBUGOUT_LF ();
|
||||||
|
|
||||||
fprintf (stderr, "T1: put %c-block seq=%d\n",
|
/* fprintf (stderr, "T1: put %c-block seq=%d\n", */
|
||||||
((msg[11] & 0xc0) == 0x80)? 'R' :
|
/* ((msg[11] & 0xc0) == 0x80)? 'R' : */
|
||||||
(msg[11] & 0x80)? 'S' : 'I',
|
/* (msg[11] & 0x80)? 'S' : 'I', */
|
||||||
((msg[11] & 0x80)? !!(msg[11]& 0x10) : !!(msg[11] & 0x40)));
|
/* ((msg[11] & 0x80)? !!(msg[11]& 0x10) : !!(msg[11] & 0x40))); */
|
||||||
|
|
||||||
rc = bulk_out (handle, msg, msglen);
|
rc = bulk_out (handle, msg, msglen);
|
||||||
if (rc)
|
if (rc)
|
||||||
@ -576,16 +578,16 @@ ccid_transceive (ccid_driver_t handle,
|
|||||||
|
|
||||||
if (tpdulen < 4)
|
if (tpdulen < 4)
|
||||||
{
|
{
|
||||||
DEBUGOUT ("cannot yet handle short block!!\n");
|
DEBUGOUT ("cannot yet handle short blocks!\n");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
fprintf (stderr, "T1: got %c-block seq=%d err=%d\n",
|
/* fprintf (stderr, "T1: got %c-block seq=%d err=%d\n", */
|
||||||
((msg[11] & 0xc0) == 0x80)? 'R' :
|
/* ((msg[11] & 0xc0) == 0x80)? 'R' : */
|
||||||
(msg[11] & 0x80)? 'S' : 'I',
|
/* (msg[11] & 0x80)? 'S' : 'I', */
|
||||||
((msg[11] & 0x80)? !!(msg[11]& 0x10) : !!(msg[11] & 0x40)),
|
/* ((msg[11] & 0x80)? !!(msg[11]& 0x10) : !!(msg[11] & 0x40)), */
|
||||||
((msg[11] & 0xc0) == 0x80)? (msg[11] & 0x0f) : 0
|
/* ((msg[11] & 0xc0) == 0x80)? (msg[11] & 0x0f) : 0 */
|
||||||
);
|
/* ); */
|
||||||
|
|
||||||
if (!(tpdu[1] & 0x80))
|
if (!(tpdu[1] & 0x80))
|
||||||
{ /* This is an I-block. */
|
{ /* This is an I-block. */
|
||||||
|
@ -277,8 +277,7 @@ main (int argc, char **argv )
|
|||||||
may_coredump = disable_core_dumps ();
|
may_coredump = disable_core_dumps ();
|
||||||
|
|
||||||
/* Set default options. */
|
/* Set default options. */
|
||||||
opt.pcsc_driver = NULL; /* We can't use libpcsclite due to license
|
opt.pcsc_driver = "libpcsclite.so";
|
||||||
conflicts. */
|
|
||||||
|
|
||||||
|
|
||||||
shell = getenv ("SHELL");
|
shell = getenv ("SHELL");
|
||||||
|
Loading…
x
Reference in New Issue
Block a user