aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--scd/ChangeLog4
-rw-r--r--scd/app-openpgp.c6
2 files changed, 9 insertions, 1 deletions
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 <[email protected]>
+
+ * app-openpgp.c (do_setattr): Sync FORCE_CHV1.
+
2004-04-27 Werner Koch <[email protected]>
* 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;
}