diff --git a/scd/ChangeLog b/scd/ChangeLog index 2233f223d..14dd9c3ff 100644 --- a/scd/ChangeLog +++ b/scd/ChangeLog @@ -1,3 +1,7 @@ +2004-04-28 Werner Koch + + * app-openpgp.c (do_setattr): Sync FORCE_CHV1. + 2004-04-27 Werner Koch * app-common.h: Do not include ksba.h for gnupg 1. diff --git a/scd/app-openpgp.c b/scd/app-openpgp.c index 07420c697..f40951941 100644 --- a/scd/app-openpgp.c +++ b/scd/app-openpgp.c @@ -704,13 +704,14 @@ do_setattr (APP app, const char *name, static struct { const char *name; int tag; + int special; } table[] = { { "DISP-NAME", 0x005B }, { "LOGIN-DATA", 0x005E }, { "DISP-LANG", 0x5F2D }, { "DISP-SEX", 0x5F35 }, { "PUBKEY-URL", 0x5F50 }, - { "CHV-STATUS-1", 0x00C4 }, + { "CHV-STATUS-1", 0x00C4, 1 }, { "CA-FPR-1", 0x00CA }, { "CA-FPR-2", 0x00CB }, { "CA-FPR-3", 0x00CC }, @@ -735,6 +736,9 @@ do_setattr (APP app, const char *name, if (rc) log_error ("failed to set `%s': %s\n", table[idx].name, gpg_strerror (rc)); + if (table[idx].special == 1) + app->force_chv1 = (valuelen && *value == 0); + return rc; }